Jeff Clites [EMAIL PROTECTED] wrote:
return_cc == alias for call_cc_indexed 0
tailcall == alias for call_cc_indexed 1
call_cc_indexed 2 == invoke the continuation from 2 frames back, as
though it had been passed down
Yep. I can imagine that that's avaiable as:
$P0 =
On Sep 24, 2004, at 1:13 AM, Leopold Toetsch wrote:
Piers Cawley [EMAIL PROTECTED] wrote:
I could be wrong here, but it seems to me that having a special
'tailinvoke' operator which simply reuses the current return
continuation instead of creating a new one would make for rather
faster
tail calls
Leopold Toetsch [EMAIL PROTECTED] writes:
Dan Sugalski wrote:
At 4:15 PM +0200 9/23/04, Leopold Toetsch wrote:
get_cc(OUT Px) # 1) get current continuation, i.e. the return cont.
In a rare, possibly unique burts of opcode parsimoniousness... perhaps
this would be a good thing for the
Piers Cawley [EMAIL PROTECTED] wrote:
I could be wrong here, but it seems to me that having a special
'tailinvoke' operator which simply reuses the current return
continuation instead of creating a new one would make for rather faster
tail calls than fetching the current continuation out of
I've started tweaking internals to get a faster calling scheme in place.
Part 1 (in CVS) moved the subroutine's address into the parrot_sub_t
structure. Accessing such Sub-internals via get_pointer set_pointer is
working still safely.
Anyway, next will be to hide the return continuation in
At 4:15 PM +0200 9/23/04, Leopold Toetsch wrote:
I've started tweaking internals to get a faster calling scheme in
place. Part 1 (in CVS) moved the subroutine's address into the
parrot_sub_t structure. Accessing such Sub-internals via get_pointer
set_pointer is working still safely.
Anyway,
Dan Sugalski writes:
At 4:15 PM +0200 9/23/04, Leopold Toetsch wrote:
return_cc() # 2) return via current continuation
1) is only needed for special porposes, like passing the
continuation on to a different place. The normal way to return from
a sub will be 2)
If that's in,
At 11:23 AM -0600 9/23/04, Luke Palmer wrote:
Dan Sugalski writes:
At 4:15 PM +0200 9/23/04, Leopold Toetsch wrote:
return_cc() # 2) return via current continuation
1) is only needed for special porposes, like passing the
continuation on to a different place. The normal way to return
Dan Sugalski wrote:
At 4:15 PM +0200 9/23/04, Leopold Toetsch wrote:
get_cc(OUT Px) # 1) get current continuation, i.e. the return cont.
In a rare, possibly unique burts of opcode parsimoniousness... perhaps
this would be a good thing for the interpinfo op.
That's fine too.
return_cc()