aboutsummaryrefslogtreecommitdiff
path: root/new-luxc/source/luxc/lang/translation/r
diff options
context:
space:
mode:
authorEduardo Julian2020-05-17 20:10:42 -0400
committerEduardo Julian2020-05-17 20:10:42 -0400
commitd97f92842981501a8e0d95a1b4f1ba3d9e72f0d5 (patch)
tree3aa01a37da19e1e63bbf8cd204ae6743166e386a /new-luxc/source/luxc/lang/translation/r
parent9219da9a9bf29b3a2f7f10d4865b939ded28e003 (diff)
Local binding names for (co|indexed-)?monads are now explicitly set.
Diffstat (limited to 'new-luxc/source/luxc/lang/translation/r')
-rw-r--r--new-luxc/source/luxc/lang/translation/r/function.jvm.lux4
-rw-r--r--new-luxc/source/luxc/lang/translation/r/loop.jvm.lux4
-rw-r--r--new-luxc/source/luxc/lang/translation/r/procedure/common.jvm.lux4
-rw-r--r--new-luxc/source/luxc/lang/translation/r/procedure/host.jvm.lux4
-rw-r--r--new-luxc/source/luxc/lang/translation/r/statement.jvm.lux2
-rw-r--r--new-luxc/source/luxc/lang/translation/r/structure.jvm.lux2
6 files changed, 10 insertions, 10 deletions
diff --git a/new-luxc/source/luxc/lang/translation/r/function.jvm.lux b/new-luxc/source/luxc/lang/translation/r/function.jvm.lux
index 5ecf21c3c..f39a5e1a2 100644
--- a/new-luxc/source/luxc/lang/translation/r/function.jvm.lux
+++ b/new-luxc/source/luxc/lang/translation/r/function.jvm.lux
@@ -16,7 +16,7 @@
(def: #export (translate-apply translate functionS argsS+)
(-> (-> ls.Synthesis (Meta Expression)) ls.Synthesis (List ls.Synthesis) (Meta Expression))
- (do macro.Monad<Meta>
+ (do {@ macro.Monad<Meta>}
[functionO (translate functionS)
argsO+ (monad.map @ translate argsS+)]
(wrap (r.apply argsO+ functionO))))
@@ -50,7 +50,7 @@
(-> (-> ls.Synthesis (Meta Expression))
(List Variable) ls.Arity ls.Synthesis
(Meta Expression))
- (do macro.Monad<Meta>
+ (do {@ macro.Monad<Meta>}
[[function-name bodyO] (//.with-sub-context
(do @
[function-name //.context]
diff --git a/new-luxc/source/luxc/lang/translation/r/loop.jvm.lux b/new-luxc/source/luxc/lang/translation/r/loop.jvm.lux
index c64973d8f..f1197e5ce 100644
--- a/new-luxc/source/luxc/lang/translation/r/loop.jvm.lux
+++ b/new-luxc/source/luxc/lang/translation/r/loop.jvm.lux
@@ -14,7 +14,7 @@
(def: #export (translate-loop translate offset initsS+ bodyS)
(-> (-> ls.Synthesis (Meta Expression)) Nat (List ls.Synthesis) ls.Synthesis
(Meta Expression))
- (do macro.Monad<Meta>
+ (do {@ macro.Monad<Meta>}
[loop-name (|> (macro.gensym "loop")
(:: @ map (|>> %code lang.normalize-name)))
initsO+ (monad.map @ translate initsS+)
@@ -31,7 +31,7 @@
(def: #export (translate-recur translate argsS+)
(-> (-> ls.Synthesis (Meta Expression)) (List ls.Synthesis)
(Meta Expression))
- (do macro.Monad<Meta>
+ (do {@ macro.Monad<Meta>}
[[loop-name offset] //.anchor
argsO+ (monad.map @ translate argsS+)]
(wrap (r.apply argsO+ (r.global loop-name)))))
diff --git a/new-luxc/source/luxc/lang/translation/r/procedure/common.jvm.lux b/new-luxc/source/luxc/lang/translation/r/procedure/common.jvm.lux
index f806805c0..85ccd90dc 100644
--- a/new-luxc/source/luxc/lang/translation/r/procedure/common.jvm.lux
+++ b/new-luxc/source/luxc/lang/translation/r/procedure/common.jvm.lux
@@ -63,7 +63,7 @@
(syntax: (arity: {name s.local-identifier} {arity s.nat})
(with-gensyms [g!_ g!proc g!name g!translate g!inputs]
- (do @
+ (do {@ macro.monad}
[g!input+ (monad.seq @ (list.repeat arity (macro.gensym "input")))]
(wrap (list (` (def: #export ((~ (code.local-identifier name)) (~ g!proc))
(-> (-> (..Vector (~ (code.nat arity)) Expression) Expression)
@@ -91,7 +91,7 @@
(-> Variadic (-> Text Proc))
(function (_ proc-name)
(function (_ translate inputsS)
- (do macro.Monad<Meta>
+ (do {@ macro.Monad<Meta>}
[inputsI (monad.map @ translate inputsS)]
(wrap (proc inputsI))))))
diff --git a/new-luxc/source/luxc/lang/translation/r/procedure/host.jvm.lux b/new-luxc/source/luxc/lang/translation/r/procedure/host.jvm.lux
index 2793b40e8..3bd33955f 100644
--- a/new-luxc/source/luxc/lang/translation/r/procedure/host.jvm.lux
+++ b/new-luxc/source/luxc/lang/translation/r/procedure/host.jvm.lux
@@ -36,7 +36,7 @@
## (-> Text @.Proc)
## (case inputs
## (^ (list& functionS argsS+))
-## (do macro.Monad<Meta>
+## (do {@ macro.Monad<Meta>}
## [functionO (translate functionS)
## argsO+ (monad.map @ translate argsS+)]
## (wrap (lua.apply functionO argsO+)))
@@ -56,7 +56,7 @@
## (-> Text @.Proc)
## (case inputs
## (^ (list& tableS [_ (#.Text field)] argsS+))
-## (do macro.Monad<Meta>
+## (do {@ macro.Monad<Meta>}
## [tableO (translate tableS)
## argsO+ (monad.map @ translate argsS+)]
## (wrap (lua.method field tableO argsO+)))
diff --git a/new-luxc/source/luxc/lang/translation/r/statement.jvm.lux b/new-luxc/source/luxc/lang/translation/r/statement.jvm.lux
index 7530e3669..1798cb56d 100644
--- a/new-luxc/source/luxc/lang/translation/r/statement.jvm.lux
+++ b/new-luxc/source/luxc/lang/translation/r/statement.jvm.lux
@@ -12,7 +12,7 @@
(def: #export (translate-def name expressionT expressionO metaV)
(-> Text Type Expression Code (Meta Any))
- (do macro.Monad<Meta>
+ (do {@ macro.Monad<Meta>}
[current-module macro.current-module-name
#let [def-name [current-module name]]]
(case (macro.get-identifier-ann (name-of #.alias) metaV)
diff --git a/new-luxc/source/luxc/lang/translation/r/structure.jvm.lux b/new-luxc/source/luxc/lang/translation/r/structure.jvm.lux
index e9a528d2b..cea8fcd59 100644
--- a/new-luxc/source/luxc/lang/translation/r/structure.jvm.lux
+++ b/new-luxc/source/luxc/lang/translation/r/structure.jvm.lux
@@ -20,7 +20,7 @@
(translate singletonS)
_
- (do macro.Monad<Meta>
+ (do {@ macro.Monad<Meta>}
[elemsT+ (monad.map @ translate elemsS+)]
(wrap (r.list elemsT+)))))