Having skimmed over the thread, I get a taste of
'Open classes bad. Strong typing good.' Apologies if I'm paraphrasing
excessively,
but there's no law saying I have to pay attention :)

On 05/05/06, M. Edward (Ed) Borasky <znmeb / cesmail.net> wrote:

> 1. I haven't used meta-programming in a *long* time. The last time I did
> anything like it on a for-profit project was in the mid-1960s, and I had
> my head handed to me by management for it. It's just not maintainable by
> anyone except the original programmer and those *very* closely
> associated with the original programmer.

That assumes the language makes it difficult to do cleanly, and I honestly
don't think that's true in Rubys case.

I'm not saying it's always safe. If you're advocating a 'best practice' approach
then I'm all for it.

Can I propose "extend the object, not the class" as rule #1.

> In fact, I think the same goes for domain-specific languages. On a
> software project, we already share a spoken language, one or more
> programming languages, a shell/command line language, a revision/version
> control system and lots of other environmental languages.

Yes, but C doesn't have key
> 2. Complex adaptive systems, no matter whether they are organizations,
> software, a living animal, or some combination of these, are ... well
> ... complex and adaptive. :) Unmastered complexity is a project-killer.

The last two statements seem in opposition.

Cheers

--
Rasputin :: Jack of All Trades - Master of Nuns
http://number9.hellooperator.net/