Flow-Based Programming Introduction Toronto, Sept 11, 2013 Paul Tarvydas
Simple (text) example of FBP ls -l | less Characteristics: components ports standardized communication
FBP subroutine / statement-level components visual components & pipes (textual also) {processes | co-routines | stackless} ports (queues) – {bounded | unbounded} {streams | events} encapsulation (namespace, time, space, control flow, …), composition, hierarchy
Often Compared to... Erlang, CSP, Actors (FBP is hierarchical, siblings invisible) UML (FBP is for compiling designs, not modeling them) LabView (FBP preserves component separation at runtime) Scratch, etc. (FBP is primarily meant to simplify s/w engineering / architecting, not targeted at non-programmers per se)
NoFlo Javascript (Coffeescript) + Node.js
FBP in FBP yEd LOC + fork();
Websites