Discussions

Blogs: Programming Without a Call Stack

  1. Programming Without a Call Stack (5 messages)

    In his blog, Bruce Snyder reviews Programming Without a Call Stack – Event-driven Architectures by Gregor Hohpe. Gregor is a co-author of Enterprise Integration Patterns which is support by a website to which the document was linked. What Bruce likes about the article is that it really explains the differences between the two models.
    One of my favorite discussions in the paper concerns the tracking and analysis of complex events
    In that discussion, Gregor makes the observation that events are easily exposed which makes them much easier to track then the traditional mechanisms. The review then segues into a discussion of FUSE, a framework that provides a JBI (JSR-208) container that can manage routing of messages.
    A very compelling idea that has come about is that of building more sophisticated business applications on top of FUSE that can analyze business events and act upon them according to a set of rules
    Now all Bruce is looking for is his first success story so that will validate his assertion that being able to analyze and act upon business events could be a very valuable addition to an application.

    Threaded Messages (5)

  2. ...his assertion that being able to analyze and act upon business events could be a very valuable addition to an application
    Well, I never would have guessed ;)
  3. Terminology?[ Go to top ]

    Sometimes you wonder.... Why is this "without a call stack" and not simply "event driven". Because god forbid if the initial function or method can't call another function or method. The title led me to believe the topic was going to be some revolutionary new programming paradigm. Oh well.
  4. Delete! Delete![ Go to top ]

    Okay, so I should've read a little further. I retract my original message. Still it's hard to believe that one would replace the call stack entirely. An interesting idea but a lot of the concepts discussed are not exactly new. Fork/exec for instance to implement the ability to invoke functionality and continue without waiting for a result. Definitely worth a read.
  5. Commas, Man![ Go to top ]

    Commas are cheap Gregor! Otherwise, it was an interesting read. --Dale--
  6. nothing new in computing[ Go to top ]

    Aren't there a number of technologies that don't use call stacks? CPS in Lambda calculus, for example? Doesn't ObjectiveC use message passing as the function invocation technique? Pi calculus (although relatively new) involves parallel threads communicating through message channels. Interesting that things come around again and again. Largely a question of how you want to think and how this best suits the problem at hand.