Path: utzoo!utgpu!news-server.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!pt.cs.cmu.edu!dsl.pitt.edu!pitt!willett!dwp From: dwp@willett.pgh.pa.us (Doug Philips) Newsgroups: comp.lang.forth Subject: Re: Factoring of CREATE Message-ID: <1597.UUL1.3#5129@willett.pgh.pa.us> Date: 24 Aug 90 05:05:55 GMT Organization: String, Scotch tape, and Paperclips. (in Pgh, PA) Lines: 41 In <9008230617.AA28712@ucbvax.Berkeley.EDU>, wmb@MITCH.ENG.SUN.COM writes: > > > CREATE (and other words) can be easily refactored as "take next word from > > > input stream then invoke $CREATE" which takes a string argument. > > Of course, this implies that EACH of those "other words" will need string > versions too, i.e. $: $VARIABLE $CONSTANT $CODE and any other defining > words that are present in one's system. Furthermore, user's would be > advised, for consistency's sake, to make 2 versions of every CREATE ... > DOES> word. I think you are right about "EACH of those 'other words'". I'm not sure I agree with new words. If the new words only used $CREATE DOES>, then the user(s) of the new words could prefix them with a WORD (or whatever is appropriate for leaving on the stack what $CREATE expects). > In retrospect, I think it would be better if the CREATE forms (as opposed > to the $CREATE form) did not exist. But that is water under the bridge. Agreed. On both counts. > From where we stand today, the QUOTE-TO solution as given by Robert Berkey > is probably the best way out of the jam. QUOTE-TO allows you pass a stack > string to an existing defining word, e.g. > > " FOOBAR" ' CREATE QUOTE-TO Boy, that sounds really familiar. Was it written up anywhere (FD, etc?)? [The obvious question: Can QUOTE-TO be done in BASIS/dpANS-Forth?] -Doug --- Preferred: ( dwp@willett.pgh.pa.us OR ...!{sei,pitt}!willett!dwp ) Daily: ...!{uunet,nfsun}!willett!dwp [last resort: dwp@vega.fac.cs.cmu.edu] --- Preferred: ( dwp@willett.pgh.pa.us OR ...!{sei,pitt}!willett!dwp ) Daily: ...!{uunet,nfsun}!willett!dwp [last resort: dwp@vega.fac.cs.cmu.edu]