On Friday 25 June 2004 22:03, Michael Latta wrote:
I will read the paper for sure.
I agree with the comments you made in the other email. In fact, I had said that this could be an inspiration for you, but was not likely to be a solution.
I would say however that simple is not enough, it must be simply elegant. The simplicity must solve a number of issues. I am sure you had this in mind as well. Just as Self can meet all the needs of class based inheritance without needing all the attendant infrastructure or restrictions, it would be better to have a simple elegant solution to many problems such as cloning of trees of objects, and adding transactionality to objects, and concurrency control, etc. I may end up landing on something more akin to aspects than any specific features. At this early stage it is still mostly an adventure, the result of the journey can not yet be predicted.
One thing that is important to distinguish is whether a given instance of simplicity is "painful" or "joyful".
Imagine that you are trying to create the simplest paint program possible. The user interface could use just two keys: "space" moves the cursor to the next pixel and "tab" cycles the current pixel between all available colors. This is enough to get the job done, but nobody would say it was fun to go back a pixel (you have to press "space" (800x600)-1 times for a medium resolution drawing!).
You could make it a little more complex: four cursor keys to change the pixel selection and "tab" for the color. This is much more joyful to use. And you could add even more stuff. There is a point in which the extra complexity will make the program less fun to use.
Normally we would be coming from the opposite direction - our first attempts are much more complicated than needed. Einstein said "make things as simple as possible, but no simpler". I understood that to mean the point of maximum joy.
-- Jecel P.S.: http://www.merlintec.com:8080/software/11 shows some of my attempts to find that point, including regarding things such as optional arguments and stuff