diff options
Diffstat (limited to '')
-rw-r--r-- | lux-jvm/source/luxc/lang/translation/jvm/case.lux | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/lux-jvm/source/luxc/lang/translation/jvm/case.lux b/lux-jvm/source/luxc/lang/translation/jvm/case.lux index 0c9ad675f..94a3deb05 100644 --- a/lux-jvm/source/luxc/lang/translation/jvm/case.lux +++ b/lux-jvm/source/luxc/lang/translation/jvm/case.lux @@ -1,6 +1,6 @@ (.using [library - [lux {"-" Type Label Primitive if let case} + [lux {"-" Type Label Primitive if exec let case} [abstract ["[0]" monad {"+" do}]] [control @@ -253,6 +253,15 @@ elseI (_.label @end)))))) +(def: .public (exec phase archive [this that]) + (Generator [Synthesis Synthesis]) + (do phase.monad + [this! (phase archive this) + that! (phase archive that)] + (in (|>> this! + _.POP + that!)))) + (def: .public (let phase archive [inputS register exprS]) (Generator [Synthesis Nat Synthesis]) (do phase.monad |