Eliminating assignments and variable syntax (accessors)
Alan.Kay at disney.com
Sat Aug 14 16:44:42 UTC 1999
Wow, lots of "sound and fury ...".
Here's one of the original notations I proposed for Smalltalk-71-2, but
which never got implemented. The idea was that you could use open and close
parens if you wanted, but if you alternatively wished to "indent and line
up" you <cr>ed before you closed the paren and the left one would be
converted into a "gray line" (on a one bit map screen it would alternate
black and white dots vertically to appear gray). This vertical line was the
height of the leading so it would connect up with the indent at the same
level on subsequent lines. Each new <cr> would continue the vertical line.
Typing a right paren would terminate this indenting level.
The basic observation here was that we would be working on a computer
after all, and hence really didn't have to imitate the typewriter
slavishly. The computer should be able to create formats that really work
for reading that might not have anything to do with long strings of text ...
Another observation and suggestion.
Observation: Squeak/Smalltalk is not likely to spread to "the
millions" unless it has a readable and inviting look to it. And "the
millions" here includes other programmers. The two syntaxes most likely to
succeed are "C-like" (which I just couldn't abide), or "scriptlike" (which
could actually work). I don't think Python is a very good syntax for OOP,
but good scripting syntaxes for real OOP languages have been done (c.f.
Suggestion: turn all the energy worrying about formatting Smalltalk-80
conventions into good ideas for making real OOP inviting to look at and we
can make these happen right from the parse tree ....
Cheers to all,
More information about the Squeak-dev