Renaming variables in AST is closely coupled with scoping rules.
I messed up the scoping rule for non-recursive let bindings, this PR fixes the bug and adds regression test.
It also discovers and documents a bug in renaming for prim-ops and native functions. It's intentionally left unresolved for now. See c82302f for details.
Renaming variables in AST is closely coupled with scoping rules. I messed up the scoping rule for non-recursive let bindings, this PR fixes the bug and adds regression test.
It also discovers and documents a bug in renaming for prim-ops and native functions. It's intentionally left unresolved for now. See c82302f for details.