aboutsummaryrefslogtreecommitdiff
path: root/new-luxc/source/luxc/lang/extension/statement.lux
diff options
context:
space:
mode:
Diffstat (limited to 'new-luxc/source/luxc/lang/extension/statement.lux')
-rw-r--r--new-luxc/source/luxc/lang/extension/statement.lux10
1 files changed, 6 insertions, 4 deletions
diff --git a/new-luxc/source/luxc/lang/extension/statement.lux b/new-luxc/source/luxc/lang/extension/statement.lux
index 7cb404b13..afabf867b 100644
--- a/new-luxc/source/luxc/lang/extension/statement.lux
+++ b/new-luxc/source/luxc/lang/extension/statement.lux
@@ -12,6 +12,7 @@
[//]
(luxc [lang]
(lang [".L" host]
+ [".L" scope]
(host ["$" jvm])
(analysis [".A" common]
[".A" expression])
@@ -98,11 +99,12 @@
(case inputsC+
(^ (list [_ (#.Symbol ["" args])] programC))
(do macro.Monad<Meta>
- [[_ programA] (lang.with-scope
- (lang.with-type (type (IO Unit))
- (expressionA.analyser evalL.eval programC)))
+ [[_ programA] (<| lang.with-scope
+ (scopeL.with-local [args (type (List Text))])
+ (lang.with-type (type (IO Unit)))
+ (expressionA.analyser evalL.eval programC))
programI (expressionT.translate (expressionS.synthesize programA))
- _ (statementT.translate-program args programI)]
+ _ (statementT.translate-program programI)]
(wrap []))
_