davidsummers / dranged Goto Github PK
View Code? Open in Web Editor NEWPipeable CoRoutines, (Threaded) Generators, and Ranges in C++
License: MIT License
Pipeable CoRoutines, (Threaded) Generators, and Ranges in C++
License: MIT License
DRANGED LIBRARY OVERVIEW ======== The DRANGED library is my version of a Range Library that will use the Border/Element design, Pipes/Pipelines, CoRoutine Generators and possibly Threaded Generators. The concepts I'm experimenting with are: RANGES using Border/Element design pattern: =========================================== The range is delimited by Borders (begin/end). Each Border is an iterator and also has an element_before( )/element_after( ), however it can't be derefenced. The begin( ) border does not have an element_before( ), actually just undefined behaviour. The end( ) border does not have an element_after( ), actually just undefined behaviour. Each Element is an iterator and can also be deferenced to find the value of the element. It has a border_before( )/border_after( ). A valid element always has a valid border_before( )/border_after( ). ++Element past end is undefined behaviour. --Element before beginning is undefined behaviour. Each Element can be tested as a bool, when returned from algorithms that return Elements, to see if the alorithm found an element value. For instance: if ( auto element = find( myVec, 3 ) ) { // Do something if element found. } GENERATORS using COROUTINES =========================== CoRoutines are now a part of the standard library and can be used now on Linux, MacOS, and Windows. They are encapsulated in Generators. PIPES/PIPELINES =============== A pipe is a single stage of a pipeline that does processing on and/or transforms its input into an output. Pipes can be combined together in a pipeline using the >>= operator. Containers, Ranges and Generators can be used to put values into the start of the pipeline. There will be various classes to collect and process the results. The first collection class is PushBack which just outputs to an STL container.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.