[self-interest] simplicity
Ian Woollard
junkmail at wolfkeeper.plus.com
Sun Jun 27 15:57:50 UTC 2004
Jecel Assumpcao Jr wrote:
>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 tend to think that that is always the way it goes. We first
overcomplicate things, and the simplification results from spotting
patterns.
There's also the other problem- oversimplification.
For example, Java forbids operator overloading, and yet the language
itself uses it for Strings. For good expressibility for handling matrix
multiplication or complex arithmetic it's nigh on essential.
I think Self is guilty of oversimplification:
a) no privacy/security
b)
> I understood that to
>mean the point of maximum joy.
>
>
>
With computer languages we are ultimately limited by the mythical man
month concept- namely that there is no silver bullet to minimise
software complexity and maximise productivity.
I personally believe that at best with computer languages we can
minimise the number of problems that we cause ourself, and supply
libraries and language features for design patterns.
Clearly to the extent that a language design forbids certain design
patterns, that language has a deficiency.
For example in C++ you can do things like:
{
FileHandle f = open("/adirectory/aFile", open);
f << "I went to the zoo";
}
And the file may be automagically closed as f goes out of scope.
But this is unreliable in Java/Self/Smalltalk- you don't know when the
GC will get around to release it. I consider this to be a bug in these
languages.
This isn't apriori a question of destruction of the memory of variable
f- if the language specification caused a special method to be invoked
on the variable as it went out of scope then the appropriate behaviour
could be obtained. The inefficiency may be easily optimised away by the
compiler for the usual case of variables/objects that don't do anything
in that case.
There's lots of other things like that.
>-- 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
>
>
More information about the Self-interest
mailing list