Why we should EXTEND {} in Squeak

Lex Spoon lex at cc.gatech.edu
Sun Oct 7 20:53:41 UTC 2001


The thing is, how would this improve on regular Squeak pages?  When
would the desire arise to use a text editor instead of Squeak's GUI ?

The most convincing argument I've heard for this sort of thing, is that
people would like to be able to develop over telnet.  But that's not all
that convincing to me: it's pretty rare that I find myself on a computer
than can do text but not Squeak.  Plus, it's a slippery slope -- if they
don't have a graphics framebuffer, then why are you assuming the have a
terminal at all?  Or that they are typing it themselves?  Or that the
viewer has a framebuffer?  You've got to pick a target, and requiring a
Squeak-friendly machine for authoring doesn't seem so bad.


By the way, you can already build text using existing Smalltalk syntax. 
It would be nice if it was more concise, but short of really huge wins,
it is also very nice to avoid inventing a new language.  (How long
before you want variables?  Or loops?  Or functions?  Or objects?  See
http://www.cc.gatech.edu/~shivers/citations.html#ll .  Beware of
starting new languages!)

>   Text streamContents: [ :str |
>      str nextPutAll: 'Squeak is a ';
>         withAttributes: {TextEmphasis bold. TextEmphasis italic} do:  [ str nextPutAll: 'great' ];
>         nextPutAll: ' language!!' ].

Inspect the above, then do "TextMorph new contents: self; openInWorld".

-Lex


Joerg Beekmann <beekmann at columbusgroup.com> wrote:
> I was thinking of using this not so much for programming in the normal sense
> but as a way of creating and displaying "Squeak Pages". That is to say a way
> of processing a text file into a Squeak applications or plug in. The
> instructions would generate that appropriate Squeak UI. The plug in or
> application would be invoked based in a Squeak MIME type. Kind of like
> "SqueakTML".
>




More information about the Squeak-dev mailing list