Path: utzoo!attcan!uunet!willett!ForthNet From: ForthNet@willett.UUCP (ForthNet articles from GEnie) Newsgroups: comp.lang.forth Subject: Re: FORTH-83 Message-ID: <1353.UUL1.3#5129@willett.UUCP> Date: 18 Jul 90 02:45:47 GMT References: Organization: String, Scotch tape, and Paperclips. (in Pgh, PA) Lines: 38 In , peter@ficc.ferranti.com (Peter da Silva) writes: > My own reaction to dropping state-smart words was negative, to say the > least. You quibbled over the semantics of NOT (I happen to agree with > you there, by the way) based on human factors. Well, human factors argue > for making the same word have the same semantics whether in compile > state or interpret state. {." foo"} should no more have to be changed > in a definition than {3 .}. Ok, I'm a novice at the trickier aspects of Forth. If {'} is STATE-SMART, then the sequence ' CREATE will behave the same when compiled as when interpreted (leave some kind of address related to CREATE on the stack)? If you have that, then you need some OTHER word which can be compiled and when executed will put the address of the word next found in the input stream onto the stack. As I see it you still need two words. It seems cleaner and simpler, to me, to have two state-less words that one state-smart word and another one that is state-less (but only used in definitions?). I think I can see the point of your analogy with {3 .}. My reply to that is that the analogy is based on a flaw. The flaw (IMO) is that you should look at {'} *not* as a word that reads the word following it in the input stream at the point the ' occurs, but rather as a word that reads the next word in the input stream when it is executed. I find your position on state-smart words rather puzzling because it seems to me that Forth normally goes out of its way to be simple and transparent. State-smart-ness, to me, says that Forth is smarter and knows more about what the programmer wants than the programmer does; i.e. the programmer is too dumb to understand the difference between interpreting and compiling. I hope that I haven't just set up a straw man in order to knock it down. I must be misunderstanding something somewhere, but don't know what yet. -Doug ----- This message came from GEnie via willett through a semi-automated process. Report problems to: uunet!willett!dwp or willett!dwp@hobbes.cert.sei.cmu.edu