public PExpr Visit(FunctionExpr e) { Closure[] c = new Closure[e.Closures.Count]; for (int i = 0; i < c.Length; ++i) { var v = e.Closures[i]; c[i] = new Closure(v, ScopeManager.FindRegistered(v)); } return(new PExpr(new FunctionObj(e, c))); }
public PExpr Visit(AccessorLetExpr e) => new PExpr(ScopeManager.FindRegistered(e));