From: Allison Randal <[EMAIL PROTECTED]>
   Date: Mon, 22 Oct 2007 19:16:37 -0700

   Bob Rogers wrote:
   >    In what seems to have become an autumn tradition in the Parrot
   > community, I am about to make my third annual attempt to implement
   > Parrot support for what Common Lisp calls "special variable binding."
   [...]

   How about starting by describing the problem you want to solve in 4 
   sentences? Laziness is a virtue... also a good way to get stuff done.

   Allison

All I am talking about is the equivalent of what "local $var" provides
for Perl 5, i.e. dynamically-scoped binding of scalar "package
variables."

   ================
   From: Allison Randal <[EMAIL PROTECTED]>
   Date: Mon, 22 Oct 2007 20:43:47 -0700

   If the problem is simply "implement Common Lisp special variables", then 
   the most likely solution is to create a LispSpecialVar PMC. In the same 
   way that a MultiSub acts like a sub but internally stores a list of 
   subs, the LispSpecialVar would act like an ordinary variable to Parrot 
   internals and to all other languages, but would internally store a stack 
   of previous dynamic bindings.

How would continuations capture dynamic bindings, then?  How would
stack-unwinding know which dynamic bindings to unmake?

                                        -- Bob

Reply via email to