(moved text from FlowBasedProgramming)
Cognates (FBP-similar projects)
I know, the list is getting way too long! Badly in need of refactoring...
Actually, related concepts are spreading so fast that I can't keep up with them! Take a look at [Comega] - this looks like it will fit in beautifully, and it's Microsoft!
- WebSphere DataStage - All unix flavors, zOS/USS, MS Windows. This is a current product of the IBM Software Group, developed by Ascential Software, which was acquired by IBM in May 2005. DataStage is a data transformation tool that supports high volume parallel, scalable data movement and transformation for a wide array of business applications including data warehousing, business intelligence, optimization, etc. The entire platform is based on FBP principles, and has been sold since 1995.
- I find it surprising that people think of FBP as undiscovered. Every large-scale RDBMS is based on FBP principles internally, i.e., that's what they compile SQL into. There are a number of products like DataStage in the market based on FBP principles. We sell millions of dollars of these systems annually. - Mike Beckerle (beckerle@us.ibm.com)
- NIL/Hermes (RobStrom? at IBM Research in Yorktown Heights)
- BusinessProcessExecutionLanguage (BPEL) - comment from PaulBrown? of FiveSightTechnologies?:
- it strikes me that our BPEL engine uses something not un-FBP-like in basic concepts. We "compile" a BPEL process into a process algebraic expression where the terms are implemented as Actors [Agha] that communicate on named, Java-typed channels. Processes execute by the reduction of the expressions. We've named our version of that wheel "JaCOb?" (for Java Concurrent Objects).
- Axon - quote from WolfgangKeller?:
- recently the R&D department of BBC released their Axon framework - which looks to me like a perfect "clone" of the concepts described in your FBP book. Only that they have never heard or read of FBP before. :-) And, at least for the current prototype stage, they are using Python for their implementation, especially the "generator" feature. See http://kamaelia.sourceforge.net/ - thanks, Wolfgang!
- More on Kamaelia at http://lambda-the-ultimate.org/node/1210#comment-13266
- LindaLanguage.
- FBP's InformationPackets? (IPs) resemble Linda's tuples (see TupleSpace), with a major difference: in Linda tuples are retrieved associatively, while in FBP InformationPackets?, or trees built using them (TreeIPs?), travel across BoundedBuffer connections between processes. You can simulate FBP in Linda, by attaching a sequential number to each IP in a stream, and you could certainly write FBP components which would retrieve data associatively. However, an FBP process can tell when its upstream processes have closed down, whereas in Linda I would assume this would be difficult.
- A'UM (Yoshida and Chikayama) - ("A'UM - A Stream-based Concurrent Logic Object-Oriented Language", K. Yoshida et al, Proc 3rd Intl Conf Fifth Gen Comp Sys, Springer 1988, pp.638-649.)
- AVS [1] pioneered scientific data visualization using dataflow networks with a full drag'n'drop visual programming interface. The first family of products, culminating in AVS5, is pass-by-value and thus easily supported distributed dataflow networks. The second generation product AVS/Express? had a more powerful network language, with pass-by-reference semantics. See the user documentation for AVS/Express? visual programming [2]. AVS inspired imitations from GE (VTK), IBM (DX) and SGI (IE)...
- Visualization Toolkit (VTK) [3] An open-source tool written in C++.
- Data Explorer (DX) [4] IBM's visualization product released as open-source.
- Iris Explorer (IE) [5] SGI's visualization product now owned by NAG.
- StacklessPython - contains conversation with WolfgangKeller?, and post from CarlosRibeiro?'s blogspot.
- Indus platform "The Indus platform thus enable modeling of any application as a set of concurrently executing agents that cooperatively execute tasks by coordinating with each other and composing/plugging components." http://developer.aumeganetworks.com/ Indus wiki: http://indus.wikicities.com/ At first glance this sounds a lot like FBP ... is it really?
- Deft - table oriented declarative programming - TomLaudeman and NoahHealy (lots of material on the Deft page). They are also working on what they are tentative calling HaikuTalk (Definitionary?)- not sure how it ties in with Deft.