Chaim Frenkel <[EMAIL PROTECTED]> writes:
>A TIL level sub
>
> ^TIL header code # ptr to real Function
> ^funcA # Start of a til function
> ^funcB # start of a til function
> ^funcC
>
>So all pointers point at a real function. In the lowest level case, it
>is pure machine code to be executed. If it is a TIL level sub, the
>pointer is to a routine that pushes the current TIL program counter
>and reenters the inner loop.
>
>This is with an inner loop. The dispatching could be sped up at the
>cost of space by converting the pointers into real calls,
Sure.
>and replacing
>calls to push functions with real pushes.
Classical FORTH TIL has data stack disjoint from call stack
(in typical microprocessor versions one grew up the other grew down
and you hoped you did not meet in the middle - but that was easy
to check for).
The reason being that you need to call something that pushes things.
And of course a RISC procesor does not have a "real push" ;-)
TIL in C is possible - TI's internal CAD tools used
to have one... (in Pascal).
--
Nick Ing-Simmons <[EMAIL PROTECTED]>
Via, but not speaking for: Texas Instruments Ltd.