aboutsummaryrefslogtreecommitdiff
path: root/new-luxc/source/luxc/scope.lux
diff options
context:
space:
mode:
authorEduardo Julian2017-10-29 22:21:14 -0400
committerEduardo Julian2017-10-29 22:21:14 -0400
commit7b870a7bd124f35939d9089a2e21f0806a4c6e85 (patch)
tree076fb3544dbb1a811cfbb9dd54008b0753dead16 /new-luxc/source/luxc/scope.lux
parent2dc99a7b62fc5fc19d9982ad4398606f3aebb7a5 (diff)
- Fixed some bugs.
- Improved error reporting. - Implemented macro-expansion (for JVM). - Implemented "let" compilation.
Diffstat (limited to '')
-rw-r--r--new-luxc/source/luxc/scope.lux6
1 files changed, 3 insertions, 3 deletions
diff --git a/new-luxc/source/luxc/scope.lux b/new-luxc/source/luxc/scope.lux
index bd9a3233f..4ce8a51cb 100644
--- a/new-luxc/source/luxc/scope.lux
+++ b/new-luxc/source/luxc/scope.lux
@@ -60,14 +60,14 @@
(let [[ref-type init-ref] (maybe;default (undefined)
(get-ref name top-outer))
[ref inner'] (list/fold (: (-> Scope [Ref (List Scope)] [Ref (List Scope)])
- (function [scope [ref inner]]
+ (function [scope ref+inner]
[(#;Captured (get@ [#;captured #;counter] scope))
(#;Cons (update@ #;captured
(: (-> Captured Captured)
(|>. (update@ #;counter n.inc)
- (update@ #;mappings (&;pl-put name [ref-type ref]))))
+ (update@ #;mappings (&;pl-put name [ref-type (product;left ref+inner)]))))
scope)
- inner)]))
+ (product;right ref+inner))]))
[init-ref #;Nil]
(list;reverse inner))
scopes (list/compose inner' outer)]