diff options
Diffstat (limited to 'stdlib/source/library/lux/target/jvm/constant')
-rw-r--r-- | stdlib/source/library/lux/target/jvm/constant/pool.lux | 58 | ||||
-rw-r--r-- | stdlib/source/library/lux/target/jvm/constant/tag.lux | 9 |
2 files changed, 34 insertions, 33 deletions
diff --git a/stdlib/source/library/lux/target/jvm/constant/pool.lux b/stdlib/source/library/lux/target/jvm/constant/pool.lux index b69d7ef21..c73271b59 100644 --- a/stdlib/source/library/lux/target/jvm/constant/pool.lux +++ b/stdlib/source/library/lux/target/jvm/constant/pool.lux @@ -44,37 +44,37 @@ (type: .public (Resource a) (+State Try Pool a)) -(implementation: .public functor +(def: .public functor (Functor Resource) - - (def: (each $ it) - (|>> it - (pipe.case - {try.#Success [state output]} - {try.#Success [state ($ output)]} - - ... {try.#Failure error} - failure - (as_expected failure))))) - -(implementation: .public monad + (implementation + (def: (each $ it) + (|>> it + (pipe.case + {try.#Success [state output]} + {try.#Success [state ($ output)]} + + ... {try.#Failure error} + failure + (as_expected failure)))))) + +(def: .public monad (Monad Resource) - - (def: functor ..functor) - - (def: (in it) - (function (_ state) - {try.#Success [state it]})) - - (def: (conjoint it) - (function (_ state) - (case (it state) - {try.#Success [state' it']} - (it' state') - - ... {try.#Failure error} - failure - (as_expected failure))))) + (implementation + (def: functor ..functor) + + (def: (in it) + (function (_ state) + {try.#Success [state it]})) + + (def: (conjoint it) + (function (_ state) + (case (it state) + {try.#Success [state' it']} + (it' state') + + ... {try.#Failure error} + failure + (as_expected failure)))))) (def: try|each (template (_ <binding> <value> <body>) diff --git a/stdlib/source/library/lux/target/jvm/constant/tag.lux b/stdlib/source/library/lux/target/jvm/constant/tag.lux index cf629c062..aedf6fed2 100644 --- a/stdlib/source/library/lux/target/jvm/constant/tag.lux +++ b/stdlib/source/library/lux/target/jvm/constant/tag.lux @@ -17,11 +17,12 @@ (primitive: .public Tag U1 - (implementation: .public equivalence + (def: .public equivalence (Equivalence Tag) - (def: (= reference sample) - (u1//= (representation reference) - (representation sample)))) + (implementation + (def: (= reference sample) + (u1//= (representation reference) + (representation sample))))) (with_template [<code> <name>] [(def: .public <name> |