Quite a different way of doing software:
- Application logic is defined by building a graph
- The graph consists of reusable “black box” components, and their connections to each other
- Components can send each other packets through the connections
Done in a right way, this would finally enable true productive visual programming. Maybe the developer tool tablets are waiting for?
GUI is slowly coming up, powered by jsPlumb:
And after a bit of styling:
There is also a domain-specific language for flow-based programming. The example above, as FBP:
'package.json' -> SOURCE Read(ReadFile) OUT -> IN Split(SplitStr) Split() OUT -> IN Count(Counter) COUNT -> IN Display(Output) Read() ERROR -> IN Display()
Added support for generating docs from FBP source files with Docco:
This post originally appeared on http://www.qaiku.com/channels/show/programming/view/dbf04...