
Ruby’s open classes allow you define and redefine behavior pretty much at will; unfortunately, almost every option comes with caveats.
Ruby’s open classes allow you define and redefine behavior pretty much at will; unfortunately, almost every option comes with caveats.
It’s a way of maintaining and generating Web sites.
It imitates UserLand Frontier, but it’s written in Ruby.
You don’t have to hang around many large software development projects before you realize that most of them are crippled by their own code base.
The biggest symptom is how widely the differences in coding style are from the various collaborators.
The “secret” to programming is to boil down 14 million lines of code into a few hundred thousand that do exactly the same thing, without introducing a significant amount of “extra” complexity by having to deal with a nasty configuration. Less is more. But only if you haven’t just traded it off for some other type of complexity. Less must really be less.
It’s time to leave the secondary, external structure of our programs behind. If you can treat the reflected code from a programming language like an abstract data structure, why can’t you just keep the source itself in a similarly abstracted data structure? Isn’t the structure of a program more similar to a graph, than a list? Besides the momentum of the past, what is keeping us tied to having our code in this format?
Is a Smalltalk-like approach the answer?