Hi Rubyers,
Just a thought (and not a particularly well examined one) from an
amateur. With Ruby's blurring of the lines between compilation and
execution, I am wondering whether this scripting language (which is SO
cool), its extensions like RubyInRuby, MetaRuby, AspectR and Behaviours
and the much discussed cross-platform windowing library (maybe JRuby and
the Eclipse windowing libraries is another combination) could at least
_bootstrap_ an open-source Intentional Programming system (a la
Microsoft Research). An examination of which is available in :
"Generative Programming: Methods, Tools, and Applications" by Krzysztof
Czarnecki, Ulrich Eisenecker
864 pages 1 edition (June 6, 2000) Addison-Wesley Pub Co; ISBN:
0201309777
and various places around the Net.
From what I understand the thought is to move programming languages to
being compositions of intention declarations (sort of like an active
adorned Abstract Syntax Tree on steroids) allowing new abstractions to
become part of the programming system. "Active source" almost :) Each
intention can have sub intentions that specialize its edition (+ version
control), display, printing, evaluation (whether edition time or no) and
even code generation. Domain Specific Languages can then be constructed
and shared in a fairly processor agnostic yet efficient manner.
Anyway, its just a vapourware thought hoping to _stimulate discussion_.
Back to having fun with Ruby :)
PS: Another fun thing to think about it is the extension to Subject
Oriented Programming from IBM - http://www.research.ibm.com/hyperspace/
in Ruby (runtime composition of concern spaces) - that would be very
cool too :) (Although both thoughts do turn my brain into knots :).
Lachlan Pitts