in reply to Re: Re: (Perl6) Groking Continuations
in thread (Perl6) Groking Continuations
Is the right answer. It's not a real continuation because squirreling away a copy of the sub-reference $fred in, say, a package-global variable $Jane and calling $Jane later doesn't do what a real call-cc would allow you to do.
use vars qw{$Jane}; print call_cc { my $fred = shift; $Jane = $fred; # Squirrel away a reference $fred->(42); 64; #NOTREACHED }; print "\n"; # And then call it later, outside the call_cc block... $Jane->(101); #bang.
Results in... you guessed it, an uncaught exception. So it's just an ersatz call-cc.
Funnily enough, call-cc is used in Scheme-like languages a lot for early exits from deep/non-deterministic recursions despite also having a try/catch-style mechanism.
|
---|
Replies are listed 'Best First'. | |
---|---|
Re: Re: Re: Re: (Perl6) Groking Continuations
by John M. Dlugosz (Monsignor) on Apr 11, 2003 at 21:49 UTC | |
by Elian (Parson) on Apr 11, 2003 at 22:55 UTC | |
by John M. Dlugosz (Monsignor) on Apr 17, 2003 at 19:40 UTC |
In Section
Seekers of Perl Wisdom