Flow or dataflow programming is very interesting and powerful.

I think some similar concepts are streams and channels which both have modules 
for Nim: 
[http://nim-lang.org/docs/channels.html](http://forum.nim-lang.org///nim-lang.org/docs/channels.html)
 
[http://nim-lang.org/docs/streams.html](http://forum.nim-lang.org///nim-lang.org/docs/streams.html)

You can also think of flow as a more general abstraction for function 
composition. If you want to go that route, look through the Nim manual and 
documentation about string templating, and then metaprogramming with macros, 
the the way the parser works.

Here someone has a stream implementation in Nim with pipes 
[https://github.com/zielmicha/reactor.nim/blob/master/reactor/async/stream.nim](https://github.com/zielmicha/reactor.nim/blob/master/reactor/async/stream.nim)

Here is a workflow engine (related to flow programming and business process 
management) in C++ 
[https://github.com/kluthen/libworkflow](https://github.com/kluthen/libworkflow)
 which could be either integrated with a Nim program or have the code converted.

Here is a list of workflow engines 
[https://github.com/pditommaso/awesome-pipeline](https://github.com/pditommaso/awesome-pipeline).
 Some of those written in python might not be hard to convert to Nim or 
interact with.

Here is a web-based example of NoFlo which is JavaScript based (BTW Nim can 
also compile to JavaScript in addition to C and C++): 
[http://app.flowhub.io/#example/04847249319d2326fa92](http://forum.nim-lang.org///app.flowhub.io/#example/04847249319d2326fa92)

Channels are an intrinsic part of the Go programming language: 
[https://gobyexample.com/channels](https://gobyexample.com/channels)

If you are not already a programmer then you may have a long journey to get to 
an implementation. [https://zapier.com](https://zapier.com)/ is along the same 
lines but oriented towards business users.

Reply via email to