Leopold Toetsch writes:
> [1] yes I'm thinking of just one frame pointer :) Well, the whole scheme 
> makes a stack machine out of Parrot:
> 
> I0,...In, In+1....Ik, Ik+1...Il
> ^
> |
> frame
> pointer
> 
> I0..In are the incoming function arguments
> In+1..Ik are the working registers of the function
> Ik+1...Il are outgoing args for a function call
> Calling a function is just a move of the frame pointer to "Ik".
> The working register file size is adjusted to the actual needs of the 
> function.
> 
> Actually registers would be arranged (I0,S0,P0,N0,I1,S1...)
> 
> Is this scheme just crazy?

I love it.  Very clever, and certainly much less copying than we're
currently doing.

Luke

Reply via email to