home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!cs.utexas.edu!sun-barr!ames!agate!usenet.ins.cwru.edu!magnus.acs.ohio-state.edu!cis.ohio-state.edu!news.sei.cmu.edu!drycas.club.cc.cmu.edu!pitt.edu!pitt!willett!dwp
- Newsgroups: comp.lang.forth
- Subject: Re: Experimental Ideas (STOIC?)
- Message-ID: <4200.UUL1.3#5129@willett.pgh.pa.us>
- From: dwp@willett.pgh.pa.us (Doug Philips)
- Date: 1 Jan 93 03:07:21 GMT
- Organization: EIEI-U
- Lines: 45
-
- In article <4179.UUL1.3#5129@willett.pgh.pa.us>,
- MARCEL HENDRIX writes:
-
- [I'm quoting more than I otherwise would, because it has taken me so long
- to reply. -Doug]
-
- + dw> It is even worse than that. What if the user uses CREATE DOES>
- + dw> in the nameless colon definition? Better not forget that code!
-
- + Ok, in practice this will mean you can do more than the
- + interpreter allows, but still not everything. I'd say the code is
- + temporary by definition, so what you want with DOES> is clearly
- + illegal (in that it can't work :)
-
- + dw> If that code also does ALLOT or HERE manipulation, what does
- + dw> "forgetting" it mean?
-
- + The final result must be the same as typing 5 ALLOT or CREATE
- + foo 3 , that is, the change is ``permanent''. It has to be. Of
- + course the compiled (temporary) code cannot reside at HERE , if
- + that is what you meant. That would interfere with about anything.
-
- Right, so that even though it almost acts as if you did:
- : tmp ... ; tmp forget tmp
- it can't be _that_ easy since HERE and ALLOT would be ineffective. You
- then have to allocate the space for the temporary word somewhere else. Ah,
- but then don't you need to modify : or maybe ] to make them compile
- somewhere other than HERE ? ... and you need (perhaps?) some way of
- dealing with immediate words, that is, in postponing them?
-
- + To do it well, a string stack (not known and not a number foo :
- + 1+ ; ) or changed syntax ( S" foo" : 1+ ; ) is needed. As people
- + have mentioned already, it then starts to resemble STOIC (don't
- + know it, but looks interesting). The version with the S" may be
- + possible with little internal change and very little side
- + effects, but it sure gives a different look to the source code.
-
- Yeah, it starts getting messy. I'm not at all convinced that blurring the
- line, when it cannot be entirely erased, won't lead to more confusion,
- rather than less. However, this issue may be no less contentious than
- the state-smart versus stateless word issue. ;-)
-
- -Doug
- ---
- Preferred: dwp@willett.pgh.pa.us Ok: {pitt,sei}!willett!dwp
-