posted
Perennial
An evented application library for Ruby
About this Project
View on GitHub: http://github.com/Sutto/perennial
Perennial was the generalised result of a lot of work on Marvin. Originally coded as the core of Marvin, it encompasses the general features I use for most evented applications (be it a twitter client with BirdGrinder or a IRC client with Marvin) in a simple, reusable package.
Also, it’s designed in a way that eliminates many dependencies whilst still implementing a bunch of reusable features / features such as:
- An argument and option parser like optparse
- Simple generators for application
- A generalised application framework (bootstrapping, code reloading, logging etc)
- Daemon management utilities
- An implementation of hooks for applications / callbacks on classes.
- An implementation of the delegator pattern
- An implementation of the Marvin / BirdGrinder dispatchable event model
- Common core extensions used by the library
- EventMachine and Ruby implementations of a simple RPC system on top of JSON
One of the more interesting parts, the dispatchable event model, plays a key role in terms of modelling evented applications and I hope to get a chance to blog about it sometime soon.
Recent Commits to GitHub Repository
- Loading commit information...