--
You received this message because you are subscribed to the Google Groups "Flow Based Programming" group.
To unsubscribe from this group and stop receiving emails from it, send an email to flow-based-progra...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
I'm writing a report, which will include a discussion of why we used FBP
asynchronous techniques.
I know that the readers suffer from the Blub Paradox (google phrase:
'Paul Graham Blub Paradox').
I would welcome suggestions on how to explain this succinctly. I've
tried to explain this many, many times without much success.
[I'll probably re-read ch. 1 of
http://www.amazon.ca/Event-Based-Programming-Taking-Events-Limit/dp/1590596439
to plumb it for ideas...]
--
Suppose we have a batch application where a stream of banking transactions must be run against a stream of account records. This is often the most efficient way of updating the account records when you have to process millions of them every day. One might think that it would be simpler to just access each account record directly, but this will be extremely I/O-intensive, so the batch approach is still extremely heavily used, and it is one of the hardest types of application to code using traditional programming techniques, and is usually referred to as an “Update” program. I once figured that something like a quarter of all business programs running today are Updates! Whether or not that is the right figure, Update programs are hard to code and harder to modify, and yet the only assistance programmers ever received in pre-FBP days is a piece of paper, handed down from father to son, showing the basic logic for Updates, which is a pattern of moves and compares usually called the “Balance Line” technique. This logic then has to be modified by hand to suit the particular situation you are faced with. However, it is still only a description of an approach – to adapt it to a particular application you have to massively modify it. I once had the dubious pleasure of having to modify an update program (not FBP, obviously!) whose author had written the client an explanation of why his enhancement request could not be satisfied, which started, “Owing to the limitations of data processing,...”! My clear recollection is that modifying that program (and, for a conventional program, it was really quite well-written) was only almost impossible!
Regards,