aboutsummaryrefslogtreecommitdiff
path: root/new-luxc/source/luxc/lang/translation/jvm
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/jvm
parent9219da9a9bf29b3a2f7f10d4865b939ded28e003 (diff)
Local binding names for (co|indexed-)?monads are now explicitly set.
Diffstat (limited to 'new-luxc/source/luxc/lang/translation/jvm')
-rw-r--r--new-luxc/source/luxc/lang/translation/jvm/extension/common.lux2
-rw-r--r--new-luxc/source/luxc/lang/translation/jvm/extension/host.lux10
-rw-r--r--new-luxc/source/luxc/lang/translation/jvm/function.lux4
-rw-r--r--new-luxc/source/luxc/lang/translation/jvm/loop.lux4
-rw-r--r--new-luxc/source/luxc/lang/translation/jvm/reference.lux4
-rw-r--r--new-luxc/source/luxc/lang/translation/jvm/structure.lux2
6 files changed, 13 insertions, 13 deletions
diff --git a/new-luxc/source/luxc/lang/translation/jvm/extension/common.lux b/new-luxc/source/luxc/lang/translation/jvm/extension/common.lux
index 6d3cbbd46..383415c0a 100644
--- a/new-luxc/source/luxc/lang/translation/jvm/extension/common.lux
+++ b/new-luxc/source/luxc/lang/translation/jvm/extension/common.lux
@@ -92,7 +92,7 @@
(function (_ extension-name phase archive [input else conditionals])
(<| _.with-label (function (_ @end))
_.with-label (function (_ @else))
- (do phase.monad
+ (do {@ phase.monad}
[inputG (phase archive input)
elseG (phase archive else)
conditionalsG+ (: (Operation (List [(List [Int Label])
diff --git a/new-luxc/source/luxc/lang/translation/jvm/extension/host.lux b/new-luxc/source/luxc/lang/translation/jvm/extension/host.lux
index d448d182c..7b90a8e4f 100644
--- a/new-luxc/source/luxc/lang/translation/jvm/extension/host.lux
+++ b/new-luxc/source/luxc/lang/translation/jvm/extension/host.lux
@@ -716,7 +716,7 @@
(..custom
[($_ <>.and ..class <s>.text ..return (<>.some ..input))
(function (_ extension-name generate archive [class method outputT inputsTS])
- (do phase.monad
+ (do {@ phase.monad}
[inputsTI (monad.map @ (generate-input generate archive) inputsTS)]
(wrap (|>> (_.fuse (list@map product.right inputsTI))
(_.INVOKESTATIC class method (type.method [(list@map product.left inputsTI) outputT (list)]))
@@ -728,7 +728,7 @@
(..custom
[($_ <>.and ..class <s>.text ..return <s>.any (<>.some ..input))
(function (_ extension-name generate archive [class method outputT objectS inputsTS])
- (do phase.monad
+ (do {@ phase.monad}
[objectI (generate archive objectS)
inputsTI (monad.map @ (generate-input generate archive) inputsTS)]
(wrap (|>> objectI
@@ -750,7 +750,7 @@
(..custom
[($_ <>.and ..class (<>.some ..input))
(function (_ extension-name generate archive [class inputsTS])
- (do phase.monad
+ (do {@ phase.monad}
[inputsTI (monad.map @ (generate-input generate archive) inputsTS)]
(wrap (|>> (_.NEW class)
_.DUP
@@ -911,7 +911,7 @@
(def: (anonymous-instance archive class env)
(-> Archive (Type Class) Environment (Operation Inst))
- (do phase.monad
+ (do {@ phase.monad}
[captureI+ (monad.map @ (///reference.variable archive) env)]
(wrap (|>> (_.NEW class)
_.DUP
@@ -958,7 +958,7 @@
(function (_ extension-name generate archive [super-class super-interfaces
inputsTS
overriden-methods])
- (do phase.monad
+ (do {@ phase.monad}
[[context _] (generation.with-new-context archive (wrap []))
#let [[module-id artifact-id] context
anonymous-class-name (///.class-name context)
diff --git a/new-luxc/source/luxc/lang/translation/jvm/function.lux b/new-luxc/source/luxc/lang/translation/jvm/function.lux
index fa91b41df..888ad9545 100644
--- a/new-luxc/source/luxc/lang/translation/jvm/function.lux
+++ b/new-luxc/source/luxc/lang/translation/jvm/function.lux
@@ -103,7 +103,7 @@
(def: (instance archive class arity env)
(-> Archive (Type Class) Arity Environment (Operation Inst))
- (do phase.monad
+ (do {@ phase.monad}
[captureI+ (monad.map @ (reference.variable archive) env)
#let [argsI (if (poly-arg? arity)
(|> (nullsI (dec arity))
@@ -317,7 +317,7 @@
(def: #export (call generate archive [functionS argsS])
(Generator Apply)
- (do phase.monad
+ (do {@ phase.monad}
[functionI (generate archive functionS)
argsI (monad.map @ (generate archive) argsS)
#let [applyI (|> argsI
diff --git a/new-luxc/source/luxc/lang/translation/jvm/loop.lux b/new-luxc/source/luxc/lang/translation/jvm/loop.lux
index 14b305843..1f2168fed 100644
--- a/new-luxc/source/luxc/lang/translation/jvm/loop.lux
+++ b/new-luxc/source/luxc/lang/translation/jvm/loop.lux
@@ -35,7 +35,7 @@
(def: #export (recur translate archive argsS)
(Generator (List Synthesis))
- (do phase.monad
+ (do {@ phase.monad}
[[@begin start] generation.anchor
#let [end (|> argsS list.size dec (n.+ start))
pairs (list.zip2 (list.n/range start end)
@@ -66,7 +66,7 @@
(def: #export (scope translate archive [start initsS+ iterationS])
(Generator [Nat (List Synthesis) Synthesis])
- (do phase.monad
+ (do {@ phase.monad}
[@begin _.make-label
initsI+ (monad.map @ (translate archive) initsS+)
iterationI (generation.with-anchor [@begin start]
diff --git a/new-luxc/source/luxc/lang/translation/jvm/reference.lux b/new-luxc/source/luxc/lang/translation/jvm/reference.lux
index 4eafecec0..6bcf4a2e5 100644
--- a/new-luxc/source/luxc/lang/translation/jvm/reference.lux
+++ b/new-luxc/source/luxc/lang/translation/jvm/reference.lux
@@ -36,7 +36,7 @@
(def: (foreign archive variable)
(-> Archive Register (Operation Inst))
- (do phase.monad
+ (do {@ phase.monad}
[class-name (:: @ map //.class-name
(generation.context archive))]
(wrap (|>> (_.ALOAD 0)
@@ -59,7 +59,7 @@
(def: #export (constant archive name)
(-> Archive Name (Operation Inst))
- (do phase.monad
+ (do {@ phase.monad}
[class-name (:: @ map //.class-name
(generation.remember archive name))]
(wrap (_.GETSTATIC (type.class class-name (list)) //.value-field //.$Value))))
diff --git a/new-luxc/source/luxc/lang/translation/jvm/structure.lux b/new-luxc/source/luxc/lang/translation/jvm/structure.lux
index 7cf9f4da0..46f87142a 100644
--- a/new-luxc/source/luxc/lang/translation/jvm/structure.lux
+++ b/new-luxc/source/luxc/lang/translation/jvm/structure.lux
@@ -39,7 +39,7 @@
(def: #export (tuple generate archive members)
(Generator (List Synthesis))
- (do phase.monad
+ (do {@ phase.monad}
[#let [size (list.size members)]
_ (phase.assert not-a-tuple size
(n.>= 2 size))