[self-interest] Modifying Software
Jecel Assumpcao Jr
jecel at merlintec.com
Thu Aug 26 21:31:51 UTC 2004
On Thursday 26 August 2004 15:10, Ian Woollard wrote:
> Jecel Assumpcao Jr wrote:
> Perhaps it would be better to say that Self can have classes whenever
> you need them.
> You often don't *need* classes in Self, just like you never *need*
> methods, in either case you can always inline manually, within the
> object or the method, respectively.
> Self can have 'classes' whenever you *want* them- which is nearly
> always in my experience.
When I started using Self graphically, I would always create an empty
object like this
(| parent* = (| parent* = traits clonable |) |)
and then start editing it, adding instance-like stuff in the child
object and class-like things in its parents. But I had picked up this
habit when using the previous, textual versions of Self. Yet moving
slots around in the GUI is easy compared to cut/paste of the equivalent
text (specially when using the line oriented vi).
"Premature optimization is the root of all evil"
- Carl Hoare
"We should forget about small efficiencies, say about 97% of
the time: premature optimization is the root of all evil"
- Donald Knuth
So my current style is to start with a proper empty object and stuff
everything there. Obviously this is a problem if I make clones and then
wish to fix or add things, but in that case what I normally do is throw
away the old clones and make new ones (see the "atoms with variable
colors" example in the Self movie). When I find that I want to share
things with objects that are not exact clones, then I create a parent
and move the common stuff there.
More information about the Self-interest