J. Paul Rodker Morrison

Paul is a British-born, Canadian computer programmer, and the inventor/discoverer of Flow-Based Programming (FBP). He is the author of Flow-Based Programming: A New Approach to Application Development, whose second edition is now on sale (as of 2010), in paperback and ebook (Kindle and epub) format. He and a number of like-minded collaborators have been promoting the ideas described in this book for more than 40 years, injecting these ideas into the application development collective consciousness. In the last few years a number of large and small companies worldwide have adopted, or been inspired by, these ideas - these include IBM, Google, Facebook, Microsoft, Hortonworks, New York Times, Pentaho, and many others... unless it was parallel evolution - see "steam-engine time"! A partial list can be found in "External references".

Early Life and Education

Paul was born John Paul Rodker, in 1937, in St. John's Wood, London, UK, just before the start of World War II, the son of John Rodker, writer, translator, and publisher, and the artist, Barbara Stanger Smith, in London, England. After his parents' divorce and his mother's subsequent marriage to Edward A. Morrison III, an American citizen who signed on with the Royal Air Force, Paul's last name was changed to Morrison via an arcane British procedure called a deed poll, but he was never formally adopted. In recent years, Paul has started including Rodker again in his name in informal situations.

Paul spent most of the war years in Marshfield in Gloucestershire, and various other locations in the south of England. The only things he can really remember about Marshfield is seeing the city of Bath, 8 miles away, burning on the horizon (Paul would have been 5 years old at the time), and seeing the famous Mummers perform on the village main street, as they had been doing almost continuously since the 1100's. Paul was one of the lucky children, as he got to spend the war in England, and was able to see his mother from time to time.

For about 10 years after the end of the war, Paul's mother and step-father lived in Middlesex (now part of Greater London), and after that moved to North Wales, to the area around Dolgellau, Gwynedd. They had had one son, Thomas, Paul's half-brother, who is a mining engineer, now living in Vancouver, B.C., Canada. Barbara and Edward are both buried in the village of Llanelltyd, N. Wales.

During the war years Paul was educated by various "governesses" (some younger and some older!), and after the war was over he was sent to the Dragon School, a well-known boarding school in Oxford, where his lifelong interests in languages, science, and science fiction got their start. He would like to recognize the impact his brilliant science teacher, Gerd Sommerhoff, had on his life - Gerd pioneered what was really an early form of computer-based training using cards, and imbued his students with a love of science which has stayed with Paul all his life. At the Dragon, he was taught Latin, Classical Greek, French, and the usual other school subjects, but it was science that he enjoyed most. At about the age of 12, he won a scholarship to Eton College, entitling him to live in College, use the letters K.S. (King's Scholar) after his name, and wear a tail-coat and a gown (this was the reason that Eton scholars were called "tugs" - from "gens togata"). At the age of 15, for some unexplained reason his step-father decided he should specialize in Classics (this came as a bit of a surprise, as at the time he was trying to decide between maths and science!).

At the time Paul left Eton, the U.K. still had 2 years' compulsory National Service. At Eton, Paul had learned among other things to strip down and reassemble Sten and Bren guns, but was turned down due to minor medical problems (rather to his relief!), and was therefore able to go straight on to university, getting an "exhibition" at King's College, Cambridge. At Cambridge, he earned an MA in Archaeology and Anthropology, specializing in Social Anthropology. This subject had been recommended to him by the then provost of King's, Noel Annan, as he had missed out on several years of science, but was resolved not to do any more Classics! Anthropology and Archaeology proved to be a perfect fit with his interests, and science was not a prerequisite, so he was able to spend an extremely enjoyable 3 years learning how to recognize Neanderthal skulls and hearing about the Kachin from someone who had actually lived among them. In between Eton and Cambridge, he spent a summer at the University of Innsbruck, Austria, studying Sumerian under Herr Professor Oberhuber, plus some other subjects. (By the way, if all those "Kings" sound a bit repetitious, Eton and King's College were both founded by the same king, Henry VI.) In spite of all this education, Paul considers himself largely self-taught.

English boarding schools are famous for their horrendous food, so it was at Cambridge that Paul discovered, via the Chinese and Indian restaurants there, that (to paraphrase Peter Mayle) "food could have taste". He also took advantage of all the amenities that a famous university offers, including making friends from all over the world, playing in a small Latin band, enjoying what was then called "jive", Scots dancing, Indian music, and reading on "the backs". One friend at King's who left a strong impression was the brilliant and courageous South African anthropologist and activist, John (Jan) Epaminondas Laredo.  He died suddenly in 2000, and Paul always regretted that they had lost touch with each other after leaving Cambridge.


After leaving Cambridge in 1958, he decided to make a move into the newly emerging computer field rather than become an anthropologist, and joined IBM (UK) in January, 1959. His first few months with IBM were spent working on Unit Record equipment, followed later that year by his first computer - the IBM 650 - 2000 10-digit words of memory on a rotating magnetic drum. This means that, as of Sept. 2014, he realized he could boast that he had been programming computers continuously for 55 years (some sort of record, surely?!). He eventually worked for IBM for 33 years in 3 countries - initially in England and the US, but, for most of his career, in Canada: first in Montréal and then Toronto.

In 1963, Paul left England, got married (in Trinidad and Tobago), and then settled in the US, where Paul worked for IBM on compiler design and general systems architecture. During this period, Paul designed and developed the data structure for IBM's internal Engineering Information System (combining compressed indices, caches and B-trees), which he believes was a precursor to IBM's popular VSAM access method, modelling it in APL. It is not clear to what extent his design influenced VSAM, which uses very similar design principles - in those days IBM's East and West coasts did not communicate very well! If Paul's design was not an ancestor of VSAM, it was definitely a case of similar needs driving similar designs!

Soon after moving with his family to Montréal, Québec, in 1968, some other ideas, rooted, oddly enough, in his experience 10 years earlier with Unit Record equipment, and later influenced by Geoffrey Gordon's GPSS, flowered into what is now called Flow-Based Programming (FBP). In the early '70s he joined the IBM team helping to design and build the Bank of Montreal's "Mech" on-line banking system, an innovative, forward-looking, 24/7, system that went live in the mid-'70s. Most of the batch part of this system was built using the first implementation of FBP, called "AMPS" (Advanced Modular Processing System), written in S/360 Assembler Language, running on a single IBM mainframe, and at least one of these batch programs was still running in production as of the end of 2013 (almost 40 years later!), although many of the other ones had been rewritten over the years.

On this project, Paul was one of the lead architects - among other things, he designed:

  • the Mech online database,
  • a bilingual error message system (detailed design - the overall concept was developed by the late Art Farkas of the Bank),
  • built a set of Structured Programming macros to make IBM's High Level Assembler Language more usable (at the time these didn't exist for HLASM),
  • designed and wrote the macros implementing the Mech database and error message system,
  • specified coding standards for the project,
  • participated in the design of the batch subsystem, and of course
  • built the first implementation of FBP (AMPS).

It should be pointed out that, during the almost 40 years after Paul left the project, the part of the Mech batch system written in AMPS was maintained entirely by Bank personnel (and maybe a few IBMers), many of whom had not even been born when it was written!

In 1976, at around the time Mech went "live", Paul was transferred to Toronto, Canada, where he built a VM/CMS implementation of the IBM document indexing product STAIRS, called STAIRS/CMS. STAIRS itself was originally developed in support of IBM's antitrust lawsuit in 1969, and STAIRS/CMS became quite a successful product, although it was more accepted in Europe than in N. America. In the 1990s, IBM migrated customers to IBM SearchManager/370 under VM, and provided migration facilities to help them to do this. Paul spent the rest of his IBM career working on various FBP projects, and retired from IBM in 1992.

Following his retirement, he worked at another bank, retiring (again!) in 1994, after which he worked for about 10 years as a programming contractor. Not surprisingly, he spent several years of this time working on the famous Y2K problem, as did tens of thousands of other programmers, helping to stave off what could well have been a major world-wide disaster! After this he resumed working as a contractor for several more years on the Bank of Montreal's Mech system, whose support team had by then moved to Toronto, building a number of regression test tools using AMPS and also improving AMPS' debug facilities, and for a few years after that on Ray Nissan's job scheduling software, Cybermation, later acquired by CA Technologies. He is now an independent consultant, living in picturesque Unionville, Ontario.

Paul is now working full time on trying to spread the word about Flow-Based Programming. Oveer the last few years he has built implementations using Java, C#, C++ (supported by Boost, and using Lua as a scripting language), and more recently a JavaScript version built using Marcel Laverdet's node-fibers.

The main FBP web site can be found at Flow-Based Programming, but there are numerous related web sites, many of which can be found in External Links. To quote Australian programmer Sam Watkins, "FBP is the industrial revolution waiting to happen to software development."

Paul also spends some of his time communicating and worrying about the planet, and the human species in general. Paul uses LinkedIn to manage his professional contacts, and emits the occasional tweet on matters that interest him: mostly political, medical, and scientific. His blog seems to have lapsed somewhat during the last few years, in favour of tweets (fewer keystrokes!).

Family Information

Owing to the circumstances of his mother and father's divorce, Paul knew very little about his Ashkenazi Jewish half, although he was told that his pyloric stenosis (at about the age of 5-6 weeks, and successfully operated on) was a Jewish inheritance.  Much later in life, after having been brought up only knowing a few Anglophile American (step-)relatives (he never met any of his mother's relatives), he found out about the extensive Rodker clan - at one point the Rodker family tree showed 56 2nd cousins! Paul's paternal grandfather, David, together with much of his family, joined the mass exodus of Jews from what is now Poland, most likely to escape the pogroms of the 1880s, moving to England, where the family worked hard and prospered, a number of them as corset-makers. The first article in the Journal of the Utah Jewish Genealogical Society, Atsmi uVsari, Issue #24, Dec., 2010, describes the family's early days in England.  As far as we know, all the Rodkers in the world are related - the name seems to have been invented for (or by) just this one family! There are now Rodker descendants spread from Vancouver, Canada, to Tasmania - it might be called the "Rodker diaspora"!

The origin of the name Rodker has always been a bit of a mystery, but Paul recently guessed that Rodker is a name derived from a place, like a number of more common Jewish names such as Berliner, Krakower, etc. Following that model, Paul posited there might be a town named Rodka somewhere in central Europe, and in fact there was a town with that name in what is now Romania, and its official name is now Rădăuți. Interestingly, Wikipedia says

"A Jewish community was present before the Habsburg takeover, and is attested to have been overseen by a starost. Many Jews fleeing the Kingdom of Galicia and Lodomeria (as well as other Habsburg areas) from intense persecution and anti-Semitism during the Middle Ages settled in Rădăuţi. The community was allowed a degree of self-administration, and witnessed a period of prosperity and cultural effervescence during the 19th century."

This has now been corroborated by Oliver Rodker, Paul's late half-sister Joan's grandson, who says Joan told him this several years ago.  This fact adds a fascinating footnote to the family's history.

There is an interesting article about John Rodker on Wikipedia, mentioning, among other things, that he was a conscientious objector during World War I. He went on the run but was arrested and imprisoned in April 1917. John died in 1955, while Paul was still at university; John was fluent in French, writing regularly for a French literary magazine, and was awarded the Légion d'Honneur posthumously by the government of France for his services to French literature.

You can walk the Rodker family tree, or at least the part we have figured out, by clicking on the Rodker database, and entering a name to search on, for instance John Rodker, or Paul Morrison, and clicking on Ok. The software also supports other search criteria and relationship calculations, and even lets you change your preferred language. This is all powered by the GeneWeb program developed by Daniel de Rauglaudre at Inria, France. Merci, Daniel!

Paul's mother, Barbara McKenzie-Smith, was a painter, mostly doing paintings on commission, and a number of her paintings are hanging in various country houses around England, and also in the US.   A family tree which includes Paul's mother and many of her ancestors is being maintained by one of Paul's second cousins, Howard Smith, based in Australia. It now goes back 9 generations on Paul's mother's side (to one Thomas Stanger, ca. 1610), and can be accessed starting at Barbara Stanger McKenzie-Smith.

Paul's mother was of Highland Scots and Irish ancestry (Stanger Smith). She always claimed a connection with Ulf, brother-in-law of King Canute, as her paternal grandmother was an Ulph, which is a Latinized form of the same name (via Ulphus). The Howard Smith referred to above has the middle name Ulph. She was told that the famous Horn of Ulph was connected with this family, although Ulf is a very popular Norse given name, and the Horn now is thought to be connected with a different Ulph. DNA analysis has now corroborated the Scandinavian connection.

She was trained at the Perse School and the Slade School of Art, and as a young person was involved in the Bloomsbury Group. One of her closest friends was the lithographer, Trekkie Parsons, who became the longtime lover of Leonard Woolf, Virginia Woolf's husband, after Virginia's death. Paul remembers being taken to see Leonard at his house in the country. He was also told that Moura, Baroness Budberg, was asked to be his godmother, as she was a friend of the Rodkers, but Paul has no recollection of actually meeting her, although his half-sister, Joan Rodker, who was sort of the family archivist, knew her well.

Sadly, both of John's daughters have now passed on: Camilla Bagg died on December 1, 2007. She was the second-born of John Rodker's three children, but the first to pass on. Together with Nathalie Blondel, she edited a book about her mother, Mary Butts. John Rodker's first daughter, Joan Rodker, passed away peacefully on Dec. 27, 2010, at the age of 95 after a brief illness.

Paul's son is the CEO at Concourse Global Enrollment, affiliated with Grok Education Services currently based in Beijing, and Paul's daughter, son-in-law and grandson live in Ontario, about an hour from Toronto. Paul's half-nephew Ernest and his family live in England, as do Paul's brother-in-law and his family.

"Smart" Data Types

Paul has always felt strongly about the idea that data should be "smart". Traditionally computer data has been held as simple numeric or string values, resulting in frequent confusions about the units or encoding involved - it is now possible to handle this cleanly using OO concepts. He has put a web page on this topic on his web site, and he and the software architect, Denis Garneau, built a set of smart business data types for the brokerage project they worked on using JavaFBP.

Paul hasn't worked on "smart" data for quite a few years, although he is still strongly committed to it, so he is pleased to report that this extremely important topic is now being ably promoted by Werner Keil, Senior Test Automation Engineer, Microservice Expert at ING-DiBa. The Java SE 8 implementation of Units of Measurement Implementation, version 1.0.3, was released on Jan. 22, 2017.

"A Museum for Young Gentlemen and Ladies"

Paul inherited a children's reference book dating from the mid-1700s, that was owned by one John Smith, one of Paul's mother's ancestors, entitled "A Museum for Young Gentlemen and Ladies - 15th Edition", which was apparently very popular in its time. A copy of this was among a set of books that one Jane Barnes was arrested and sentenced for stealing, in 1783. She was fined 1 shilling and imprisoned for six months in a house of correction.

This book was apparently never digitized, so Paul has now done this, and the result can be found on the Gutenberg project, at A Museum for Young Gentlemen and Ladies, where it is now available in HTML, epub and Kindle formats. In case you were wondering, the "ſ", "ſ" - "long s" - has not been preserved in order to allow text searching, but they have been retained in the Table of Contents, for the look of it!

In late 2016, Paul donated the actual book to the Osborne Collection of Early Children's Books, Toronto Public Library, where it will hopefully be better cared for than Paul (or his descendants) would ever have been able to!


Programming languages and development methodologies, linguistics, space flight and science fiction, West African, Caribbean, Latin, and Indian music (Paul played percussion with a Latin band at Cambridge, and then later played the guïro in one of the late, great Fela Kuti's first bands, in England - probably the Highlife Rakers, although Paul doesn't remember the name of the band - and got paid for it too!); and as many areas of science, especially the life sciences, as he can keep up with. During the period when he was living in London, he was a member of the Asian Music Circle, and was also a member of the British Interplanetary Society, whose president at the time was the distinguished writer and visionary, Arthur C. Clarke.

Among the formative influences in his life, he would like to acknowledge his wife, his mother, many of the concepts of Christian Science (one of his teachers was "Fougasse", the noted British cartoonist), the Dragon School, Eton College (some positive effects, in an unintended sort of way), "Recovery", and of course Cambridge University - in Paul's totally unbiassed opinion, the finest university on the planet.


  • Data Responsive Modular, Interleaved Task Programming System, IBM Technical Disclosure Bulletin, Vol. 13, No. 8, 2425-26, January 1971
  • Data Stream Linkage Mechanism, IBM Systems Journal, Vol. 17, No. 4, 1978
  • Flow-Based Programming: A New Approach to Application Development, Van Nostrand Reinhold, NY, 1994. ISBN 0-442-01771-5. Now out of print, but available second-hand. Ed Yourdon kindly added this book to his list of cool books.
  • Flow-Based Programming, 2nd Edition: A New Approach to Application Development, CreateSpace, 2010. ISBN 1-451-54232-1

Contact Information

email: paul.morrison rogers.com

Link to Flow-Based Programming web page.

Link to Flow-Based Programming Google group web page.

Twitter: @jpaulmorrison

LinkedIn: J. Paul Morrison - LinkedIn