wyvern
wyvern copied to clipboard
safe for space
Make the interpreter safe for space (see Felleisen and Flatt, Programming Languages and Lambda Calculi, for one explanation of this) by revising the code that captures environments in a closure to only capture variables that are free. It's probably best to discuss this with me briefly before beginning implementation.
This is low-priority for now, just because the interpreter isn't mature enough to run programs where this matters.
I'd like to work on it!But I got a bad cold recently. will work it from this Wed!
Ok, sounds good. One first step that I think would be useful is to write a function that computes the free variables of an object. That function probably needs to be a method of all expressions.
Jonathan
@JonathanAldrich Got your idea, let me first check our existing implementation. Will update status in e-mail. :-)
I created a task (#76) for computing the free variables of an object. It would be useful to do this sub-task and create a PR for it first, because we've determined that it's useful for other things too.