Fluid.rb 1.0.1 released
Class Fluid provides dynamically scoped (”fluid”) variables modeled after those of Common Lisp. It also gives you a convenient way to reversibly change the values of globals.
Fluid variables are useful when you want to pass information among related classes and methods without passing arguments all over the place, but you also want something a little more controlled than globals. They’re not useful all that often, but they come in handy once in a while.
The documentation (rdoc) gives more explanation and examples, such as the code that produces this amazing, never-before-seen feat of prettyprinting: