Open bakkot opened 6 years ago
For example:
let x; function f() { { let x; x; // 1 with (o) { x; // 2 } } eval(s); x; // 3 }
would mark 1 as passing through no dynamic scopes, would mark 2 as passing through the with, and would mark 3 as passing through the function.
1
2
with
3
Can't this already be derived?
Not trivially, especially when the dynamism comes from a sloppy direct eval.
eval
For example:
would mark
1
as passing through no dynamic scopes, would mark2
as passing through thewith
, and would mark3
as passing through the function.