Leopold Toetsch <[EMAIL PROTECTED]> writes: > Jonathan Sillito <[EMAIL PROTECTED]> wrote: > >> Here is another suggestion (I think I mentioned this in another email) we >> could support a few different types of continuations. The simplest >> continuation could be just a saved return address (i.e. an opcode_t*). > > I'm fine with that, if its additionally to the current invoke/ret scheme. > >> One more thing Leo (excuse my ignorance) why is there a "stack calling >> convention" in imcc? How does it relate to calling subs via the "calling >> convention"? > > First one sentence from pdd03: > > Please note that the following conventions are only > necessary when exposing subs and methods via the generic > parrot routine exposure mechanism. > > Parrot calling conventions are for subs and methods which ought to be > accessible like e.g. library functions. All internal language stuff may > use whatever subroutine calling convention that is appropriate. > > So there are different ways to call a subroutine: > - stack calling conventions (callee saves used by BASIC, P6C)
The eventual Perl 6 implementation should almost certainly move over to a continuation passing style. -- Piers