aboutsummaryrefslogtreecommitdiff
path: root/stdlib/source/library/lux/math/number/nat.lux
diff options
context:
space:
mode:
authorEduardo Julian2022-03-15 07:24:35 -0400
committerEduardo Julian2022-03-15 07:24:35 -0400
commitbc36487224f670c23002cc4575c0dba3e5dc1be1 (patch)
tree01601f7e5d992ace77a16cfa90240ffc4511a7af /stdlib/source/library/lux/math/number/nat.lux
parent4ef1ac1dfe0edd1a11bb7f1fd13c8b6cb8f1bab4 (diff)
De-sigil-ification: ^
Diffstat (limited to '')
-rw-r--r--stdlib/source/library/lux/math/number/nat.lux80
1 files changed, 41 insertions, 39 deletions
diff --git a/stdlib/source/library/lux/math/number/nat.lux b/stdlib/source/library/lux/math/number/nat.lux
index 9d3f69e00..c52647e32 100644
--- a/stdlib/source/library/lux/math/number/nat.lux
+++ b/stdlib/source/library/lux/math/number/nat.lux
@@ -1,18 +1,20 @@
(.using
- [library
- [lux "*"
- [abstract
- [hash {"+" Hash}]
- [enum {"+" Enum}]
- [interval {"+" Interval}]
- [monoid {"+" Monoid}]
- [equivalence {"+" Equivalence}]
- [codec {"+" Codec}]
- ["[0]" order {"+" Order}]]
- [control
- ["[0]" function]
- ["[0]" maybe]
- ["[0]" try {"+" Try}]]]])
+ [library
+ [lux "*"
+ [abstract
+ [hash {"+" Hash}]
+ [enum {"+" Enum}]
+ [interval {"+" Interval}]
+ [monoid {"+" Monoid}]
+ [equivalence {"+" Equivalence}]
+ [codec {"+" Codec}]
+ ["[0]" order {"+" Order}]]
+ [control
+ ["[0]" function]
+ ["[0]" maybe]
+ ["[0]" try {"+" Try}]]
+ [macro
+ ["^" pattern]]]])
(template [<extension> <output> <name>]
[(def: .public (<name> parameter subject)
@@ -125,7 +127,7 @@
(def: .public (lcm a b)
(-> Nat Nat Nat)
(case [a b]
- (^or [_ 0] [0 _])
+ (^.or [_ 0] [0 _])
0
_
@@ -191,8 +193,8 @@
(def: (binary_value digit)
(-> Nat (Maybe Nat))
(case digit
- (^ (char "0")) {.#Some 0}
- (^ (char "1")) {.#Some 1}
+ (pattern (char "0")) {.#Some 0}
+ (pattern (char "1")) {.#Some 1}
_ {.#None}))
(def: (octal_character value)
@@ -211,14 +213,14 @@
(def: (octal_value digit)
(-> Nat (Maybe Nat))
(case digit
- (^ (char "0")) {.#Some 0}
- (^ (char "1")) {.#Some 1}
- (^ (char "2")) {.#Some 2}
- (^ (char "3")) {.#Some 3}
- (^ (char "4")) {.#Some 4}
- (^ (char "5")) {.#Some 5}
- (^ (char "6")) {.#Some 6}
- (^ (char "7")) {.#Some 7}
+ (pattern (char "0")) {.#Some 0}
+ (pattern (char "1")) {.#Some 1}
+ (pattern (char "2")) {.#Some 2}
+ (pattern (char "3")) {.#Some 3}
+ (pattern (char "4")) {.#Some 4}
+ (pattern (char "5")) {.#Some 5}
+ (pattern (char "6")) {.#Some 6}
+ (pattern (char "7")) {.#Some 7}
_ {.#None}))
(def: (decimal_character value)
@@ -239,16 +241,16 @@
(def: (decimal_value digit)
(-> Nat (Maybe Nat))
(case digit
- (^ (char "0")) {.#Some 0}
- (^ (char "1")) {.#Some 1}
- (^ (char "2")) {.#Some 2}
- (^ (char "3")) {.#Some 3}
- (^ (char "4")) {.#Some 4}
- (^ (char "5")) {.#Some 5}
- (^ (char "6")) {.#Some 6}
- (^ (char "7")) {.#Some 7}
- (^ (char "8")) {.#Some 8}
- (^ (char "9")) {.#Some 9}
+ (pattern (char "0")) {.#Some 0}
+ (pattern (char "1")) {.#Some 1}
+ (pattern (char "2")) {.#Some 2}
+ (pattern (char "3")) {.#Some 3}
+ (pattern (char "4")) {.#Some 4}
+ (pattern (char "5")) {.#Some 5}
+ (pattern (char "6")) {.#Some 6}
+ (pattern (char "7")) {.#Some 7}
+ (pattern (char "8")) {.#Some 8}
+ (pattern (char "9")) {.#Some 9}
_ {.#None}))
(def: (hexadecimal_character value)
@@ -275,13 +277,13 @@
(def: (hexadecimal_value digit)
(-> Nat (Maybe Nat))
(case digit
- (^template [<character> <number>]
- [(^ (char <character>)) {.#Some <number>}])
+ (^.template [<character> <number>]
+ [(pattern (char <character>)) {.#Some <number>}])
(["0" 0] ["1" 1] ["2" 2] ["3" 3] ["4" 4]
["5" 5] ["6" 6] ["7" 7] ["8" 8] ["9" 9])
- (^template [<lower> <upper> <number>]
- [(^or (^ (char <lower>)) (^ (char <upper>))) {.#Some <number>}])
+ (^.template [<lower> <upper> <number>]
+ [(^.or (pattern (char <lower>)) (pattern (char <upper>))) {.#Some <number>}])
(["a" "A" 10] ["b" "B" 11] ["c" "C" 12]
["d" "D" 13] ["e" "E" 14] ["f" "F" 15])
_ {.#None}))