home .. forth .. colorforth mail list archive ..

Re: [colorforth] [Re: colorforth] an observation]


On Sat, 23 Aug 2003, Raphael LaFrance wrote:

> The last word sillyness raised by me was elegantly handled by the OP using
> a null to compile to a return. Which will work whenever a block is
> initialized to 0's.
>
> I haven't been into the official code for a few months but if the block
> isn't set to 0s the compiler can just push a 0 (or a ret) down the code
> area just past anything explicitly entered. The later seems more
> efficient. That is, to have the compiler push a ret instruction behind
> its entered code rather than depending on everything being initialized
> properly.

0 terminates the 'load' command, so you would simply add a call to
semi-colon.

>
> I still need to figure out how the tail call removal would work (or see it
> done). Seeing that the comiler wont know where the end of a definition is
> until you tell it some how. I really like that feature. But it's only an
> issue on the last word in a block. & only if '...' proves useful to the
> community. In colorforth, that is, not its over use of in some posts :)
>

'...' could push a value, semi-colon could test for the value, this might
be simpler than reversing a tail-call or return.

Mark

> But this isn't new information so... back to lurk mode
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: colorforth-unsubscribe@xxxxxxxxxxxxxxxxxx
> For additional commands, e-mail: colorforth-help@xxxxxxxxxxxxxxxxxx
> Main web page - http://www.colorforth.com
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: colorforth-unsubscribe@xxxxxxxxxxxxxxxxxx
For additional commands, e-mail: colorforth-help@xxxxxxxxxxxxxxxxxx
Main web page - http://www.colorforth.com