diff options
author | Eduardo Julian | 2018-07-03 19:49:04 -0400 |
---|---|---|
committer | Eduardo Julian | 2018-07-03 19:49:04 -0400 |
commit | aac5a7796939cd705d955acb616cbff38474606d (patch) | |
tree | 567f60f65afb2a94299336a72ea105f00a16b63d /stdlib/source/lux/math | |
parent | d3f5e1f4baa667bc2eb72edd542cf5d8cd3924ce (diff) |
- Re-named "@abstraction" to ":abstraction" and "@representation" to ":representation".
Diffstat (limited to 'stdlib/source/lux/math')
-rw-r--r-- | stdlib/source/lux/math/constructive.lux | 4 | ||||
-rw-r--r-- | stdlib/source/lux/math/modular.lux | 28 |
2 files changed, 16 insertions, 16 deletions
diff --git a/stdlib/source/lux/math/constructive.lux b/stdlib/source/lux/math/constructive.lux index b154e9c20..2a904f7cb 100644 --- a/stdlib/source/lux/math/constructive.lux +++ b/stdlib/source/lux/math/constructive.lux @@ -25,12 +25,12 @@ (.All [t] (.Ex [w] (-> t (Witness t w)))) - (.|>> @abstraction)) + (.|>> :abstraction)) (.def: #export ? (.All [t w] (-> (Witness t w) t)) - (.|>> @representation)) + (.|>> :representation)) ) (syntax: #export (@ {name s.symbol}) diff --git a/stdlib/source/lux/math/modular.lux b/stdlib/source/lux/math/modular.lux index 7c71b86b1..01e02a706 100644 --- a/stdlib/source/lux/math/modular.lux +++ b/stdlib/source/lux/math/modular.lux @@ -25,11 +25,11 @@ (Ex [m] (-> Int (Error (Modulus m)))) (if (i/= 0 value) (ex.throw zero-cannot-be-a-modulus []) - (#e.Success (@abstraction value)))) + (#e.Success (:abstraction value)))) (def: #export (to-int modulus) (All [m] (-> (Modulus m) Int)) - (|> modulus @representation)) + (|> modulus :representation)) ) (exception: #export [m] (incorrect-modulus {modulus (Modulus m)} @@ -74,12 +74,12 @@ (def: #export (mod modulus) (All [m] (-> (Modulus m) (-> Int (Mod m)))) (function (_ value) - (@abstraction {#remainder (i/mod (to-int modulus) value) + (:abstraction {#remainder (i/mod (to-int modulus) value) #modulus modulus}))) (def: #export (un-mod modular) (All [m] (-> (Mod m) [Int (Modulus m)])) - (@representation modular)) + (:representation modular)) (def: separator Text " mod ") @@ -87,7 +87,7 @@ (All [m] (-> (Modulus m) (Codec Text (Mod m)))) (def: (encode modular) - (let [[remainder modulus] (@representation modular)] + (let [[remainder modulus] (:representation modular)] ($_ text/compose (int/encode remainder) separator @@ -103,19 +103,19 @@ (def: #export (equalize reference sample) (All [r s] (-> (Mod r) (Mod s) (Error (Mod r)))) - (let [[reference reference-modulus] (@representation reference) - [sample sample-modulus] (@representation sample)] + (let [[reference reference-modulus] (:representation reference) + [sample sample-modulus] (:representation sample)] (if (i/= (to-int reference-modulus) (to-int sample-modulus)) - (#e.Success (@abstraction {#remainder sample + (#e.Success (:abstraction {#remainder sample #modulus reference-modulus})) (ex.throw cannot-equalize-moduli [reference-modulus sample-modulus])))) (do-template [<name> <op>] [(def: #export (<name> reference sample) (All [m] (-> (Mod m) (Mod m) Bool)) - (let [[reference _] (@representation reference) - [sample _] (@representation sample)] + (let [[reference _] (:representation reference) + [sample _] (:representation sample)] (<op> reference sample)))] [m/= i/=] @@ -128,9 +128,9 @@ (do-template [<name> <op>] [(def: #export (<name> param subject) (All [m] (-> (Mod m) (Mod m) (Mod m))) - (let [[param modulus] (@representation param) - [subject _] (@representation subject)] - (@abstraction {#remainder (|> subject + (let [[param modulus] (:representation param) + [subject _] (:representation subject)] + (:abstraction {#remainder (|> subject (<op> param) (i/mod (to-int modulus))) #modulus modulus})))] @@ -152,7 +152,7 @@ (def: #export (inverse modular) (All [m] (-> (Mod m) (Maybe (Mod m)))) - (let [[value modulus] (@representation modular) + (let [[value modulus] (:representation modular) _modulus (to-int modulus) [vk mk gcd] (i/gcd+ value _modulus) co-prime? (i/= 1 gcd)] |