diff options
Diffstat (limited to '')
-rw-r--r-- | stdlib/source/lux/tool/compiler/language/lux/phase/generation/python/function.lux | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/stdlib/source/lux/tool/compiler/language/lux/phase/generation/python/function.lux b/stdlib/source/lux/tool/compiler/language/lux/phase/generation/python/function.lux index f98f9b929..eb815a2c8 100644 --- a/stdlib/source/lux/tool/compiler/language/lux/phase/generation/python/function.lux +++ b/stdlib/source/lux/tool/compiler/language/lux/phase/generation/python/function.lux @@ -11,7 +11,7 @@ [target ["_" python (#+ Expression Statement)]]] ["." // #_ - [runtime (#+ Operation Phase)] + [runtime (#+ Operation Phase Generator)] ["#." reference] ["#." case] ["/#" // #_ @@ -25,11 +25,11 @@ [arity (#+ Arity)] ["#." phase]]]]]) -(def: #export (apply generate [functionS argsS+]) - (-> Phase (Application Synthesis) (Operation (Expression Any))) +(def: #export (apply generate archive [functionS argsS+]) + (Generator (Application Synthesis)) (do ///////phase.monad - [functionO (generate functionS) - argsO+ (monad.map @ generate argsS+)] + [functionO (generate archive functionS) + argsO+ (monad.map @ (generate archive) argsS+)] (wrap (_.apply/* functionO argsO+)))) (def: #export capture @@ -59,14 +59,14 @@ (def: input (|>> inc //case.register)) -(def: #export (function generate [environment arity bodyS]) - (-> Phase (Abstraction Synthesis) (Operation (Expression Any))) +(def: #export (function generate archive [environment arity bodyS]) + (Generator (Abstraction Synthesis)) (do ///////phase.monad [[function-name bodyO] (/////generation.with-context (do @ [function-name /////generation.context] (/////generation.with-anchor (_.var function-name) - (generate bodyS)))) + (generate archive bodyS)))) closureO+ (: (Operation (List (Expression Any))) (monad.map @ (:: //reference.system variable) environment)) #let [@curried (_.var "curried") |