Reactive programming with meltdown
Meltdown brings to Clojure the ease of reactive programming. Your code is now turned into a set of event definitions and listeners to those events. Your running code is now bound to a state (or a set of multiple states) and each part of the code, can now react from values of the state. The event stream becomes abstracted from the code.
Say you are implementing a brand new mail software; messages showing on your screen would be bound to a state or a part of the state. The visual representation of the e-mails is a direct translation of the state itself. If you need to replace or pull in new e-mails, you would add some messages to that state list.
Meltdown can also be used as a stream processing toolkit, meaning you can somehow pipe the processing of messages, and we will look at it in the last part of this recipe.
Getting ready
Here again, there is not much to do to get ready for this recipe, we will just add the meltdown coordinates to the list of dependencies...