It is a real interesting research question: How an you build Systems that can evolve over a long time ?
Systems which evolve over time need to have a very tiny core which is supremely malleable.
For one, I would start with a "Forth" and add an object-system to it using the "Metaobject Protocol" along with a Common Lisp like "Condition System".
Forth in the context of the core of an object system is interesting��� someone did in 1979 a Smalltalk and Forth inspired system called ���Rosetta Smalltalk"
But: the nice thing of evolving a system is that you *always* can show a real, working result. You can have users, including yourself��� you can find ways of financing
your work that is not just promising something for the future. (which you can only do so often before people get sceptical).
I think being part of the early Squeak community kind of burned for me the ���let���s not improve that (relatively) simple thing A, instead wait for <genius X> to finish <amazing Project Z>.
Imagine instead you would build a feedback-loop *inside* of your system...
Marcus
Agree about what you felt within the Squeak community, I was there too around 1999~2000.
There were a bunch of geniuses there, but the way I understand it, geniuses produce the initial spark, but you need strong-willed, perseverent people to kindle the project there-after.
The reason I was drawn to Pharo is because of what Ducasse and you and others like you have done with the core spark of Smalltalk-80 based Squeak running Morphic. Though, I've always liked the MVC environment more and fell in love with the "Third-Way" project to deliver a full-blown widget-set for MVC developed by a guy called Gartner (I think) from Germany.