Contents
Overview
J. Paul Morrison, born John Paul Rodker in 1937 to writer John Rodker and artist Barbara Stanger McKenzie-Smith, developed Flow-Based Programming (FBP) in 1969 while working at IBM in Montréal after moving from the US. Influenced by Geoffrey Gordon's GPSS simulation language and earlier experiences with unit record equipment, Morrison designed FBP as a paradigm shift from von Neumann architectures, modeling applications as data processing factories with black-box processes connected externally. His contributions extended to Bank of Montreal's Mech online banking system in the early 1970s, where he implemented the first FBP prototype called AMPS, alongside designing macros for the Mech database and specifying coding standards.
⚙️ How It Works
Flow-Based Programming (FBP) operates through asynchronous, concurrent processes communicating via Information Packets over named ports and bounded buffer connections, as detailed in Morrison's IBM Systems Journal article 'Data Stream Linkage Mechanism' from 1978. Unlike traditional dataflow, FBP emphasizes loose data coupling for reusability, enabling rapid prototyping and multi-core utilization without explicit multitasking, drawing parallels to Git Version Control in component modularity. Morrison's APL modeling of IBM's Engineering Information System, featuring B-trees and caches precursor to VSAM, underscored his systems architecture expertise applied in FBP's conveyor-belt metaphor.
🌍 Cultural Impact
Morrison's FBP gained traction through implementations like NoFlo, a JavaScript-based system by Henri Bergius, who interviewed him in Toronto in 2013, bridging FBP to modern Node.js ecosystems and Web3 dataflow concepts. His 1994 book inspired NoCode movements akin to ChatGPT's modular prompting, while FBP's use in Bank of Montreal's Mech system for nearly 40 years highlighted maintainability benefits over Social Media algorithms. The paradigm's influence echoes in NoFlo meetups and Toronto FBP groups, fostering communities around open source principles similar to GitHub collaborations.
🔮 Legacy & Future
Post-IBM retirement, Morrison consulted and advocated FBP through publications like 'Patterns in Flow-Based Programming' in 2005 and a 2013 YouTube interview on its origins, passing away in 2022 as noted on Wikipedia. His vision aligns with automation trends in cloud computing, promising scalability in machine learning pipelines beyond PHP Versions constraints. Future FBP adoptions in SLAM Technology and immersive experiences could extend Mech's legacy, integrating with Khan Academy-style educational tools for programming paradigms.
Key Facts
- Year
- 1969-2022
- Origin
- London, England / Montréal, Canada
- Category
- technology
- Type
- person
Frequently Asked Questions
What is Flow-Based Programming?
FBP, invented by J. Paul Morrison, defines applications as networks of black-box processes exchanging Information Packets over predefined connections, promoting reusability and loose coupling as described in his 1994 book and IBM publications.
Where did Morrison develop FBP?
Morrison conceived FBP in 1969 at IBM in Montréal, influenced by GPSS and unit record equipment, with its first production use in Bank of Montreal's Mech system in the 1970s.
What is Morrison's notable publication?
His key book, Flow-Based Programming: A New Approach to Application Development (Van Nostrand Reinhold, 1994), details FBP's advantages in maintainability and multi-core support.
How did FBP influence modern tools?
FBP inspired NoFlo for JavaScript/Node.js, bridging to NoCode and dataflow in Web3, with Morrison mentoring Henri Bergius in 2013.
What was Morrison's career at IBM?
Over 33 years at IBM, he worked on compiler design, Engineering Information System with B-trees precursor to VSAM, and systems architecture before FBP.
References
- jpaulm.github.io — /fbp/
- blog.apifornia.com — /the-concept-of-flow-based-programming-and-its-implementation/
- en.wikipedia.org — /wiki/J._Paul_Morrison
- jpaulm.github.io — /
- bergie.iki.fi — /blog/paul-morrison-interview/
- youtube.com — /watch
- jpaulm.github.io — /fbp/history.html
- jpaulmorrison.com — /fbp/biblio.html
- goodreads.com — /book/show/11501053-flow-based-programming
- jpaulm.github.io — /
- amazon.com — /stores/author/B001HO7G3W/about
- getty.edu — /art/collection/person/104ZZ3
- chivalrytoday.com — /conversation-dr-elizabeth-morrison-j-paul-getty-museum-chivalry-middle-ages/
- getty.edu — /art/exhibitions/marvels/
- codart.nl — /guide/curators/elizabeth-morrison/