Awesome thanks ^^ Thanks for the awesome cocoa book by the way I noticed halfway through that you're the autor:-D Greets, Jan
On Aug 31, 2010, at 1:40 PM, David Chisnall <[email protected]> wrote: > On 31 Aug 2010, at 12:33, Jan-Paul Bultmann wrote: > >> I have always wondered why the sublcass: part in smalltalks class >> definitions is always called a message, because the following name:block >> pairs don't correspond to any smalltalk structure, so it's rather a giant >> syntax blob. > > > In traditional Smalltalk, #subclass: really is a message. You send it to an > existing class, with the name of the new subclass as the argument, and it > returns a new class. You then send it messages that define methods. > > This is part of the underlying philosophy of Smalltalk. There is no concept > of source code in Smalltalk - it's an entirely interactive system, and you > build a program by having a dialogue with the existing environment. > > In Pragmatic Smalltalk, we (more or less) copy GNU Smalltalk syntax. GST > introduces the idea of source code to Smalltalk, and abuses the syntax > slightly to allow static class definitions. There are some inconsistencies. > For example, GST uses the same syntax for instance variable definitions that > Smalltalk uses for local variable definitions. In contrast, Smalltalk-80 > lets you add instance variables by sending messages to the class. > > One of the things that I want to add to LanguageKit is the ability to get a > copy of the AST from a compiled block. When this is done, it will be > possible to support Smalltalk-80-style interaction; you will be able to send > a -subclass: message to a new class, then send additional messages to > register blocks as methods. > > David > > -- Sent from my Cray X1 > _______________________________________________ > Etoile-discuss mailing list > [email protected] > https://mail.gna.org/listinfo/etoile-discuss _______________________________________________ Etoile-discuss mailing list [email protected] https://mail.gna.org/listinfo/etoile-discuss
