Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!usc!ucsd!ucbvax!ENG.SUN.COM!Mitch.Bradley From: Mitch.Bradley@ENG.SUN.COM Newsgroups: comp.lang.forth Subject: Re: Problems not solved by START: Message-ID: <9105061916.AA00353@ucbvax.Berkeley.EDU> Date: 6 May 91 17:27:10 GMT Sender: daemon@ucbvax.BERKELEY.EDU Reply-To: Mitch.Bradley%ENG.SUN.COM@SCFVM.GSFC.NASA.GOV Organization: The Internet Lines: 27 > The function of START:, as I do perceive, is to factor > the naming process from the definition process, which will > allow the creation of nameless definitions. > ... > I'm not sure wheter this degree of portability is possible using > START: on it's own. > ... > I think the only way to hide this `intimate knowledge' (system dependency) > is to add yet another word called ;END (or START; (*)) that will perform > ;'s function without the name processing. At the emergency ANS Forth meeting last week, we voted to change START: so it is just like ":" without a name. The new version can be closed with ";" or ";CODE" . Thus, John Haye's example would now be written: : :CMD ( n -- w sys ) :NONAME ; : ;CMD ( n w sys -- ) POSTPONE ; ( n w ) SWAP CELLS CMD-TABLE + ! ; IMMEDIATE > (*) I'm not sure about the etymology of START: ; > ... As you can see in the above example, the name was changed to :NONAME Mitch.Bradley@Eng.Sun.COM