protected ISExpression Continuation(Stack <IFrame> s, ISchemeVM vm) { var v = AtomHelper.SymbolFromString("v"); return(Closure(new NuateInstruction(s, v), AtomHelper.CreateEnvironment(), AtomHelper.CreateList(v))); }
public override IInstruction Execute(ISchemeVM vm) { var e = AtomHelper.CreateEnvironment(); if (Populate) { AtomHelper.PopulateEnvironment(e, vm); } SetA(vm, e); return(Next); }
public void Reset(bool env = true) { A = AtomHelper.Nil; R = new Stack <ISExpression>(); S = new Stack <IFrame>(); if (env) { E = AtomHelper.CreateEnvironment(); AtomHelper.PopulateEnvironment(E, this); } }