diff options
author | Eduardo Julian | 2018-08-20 18:57:06 -0400 |
---|---|---|
committer | Eduardo Julian | 2018-08-20 18:57:06 -0400 |
commit | 7dc94b0ba528b40d13e88732ba307a1a24ac93c3 (patch) | |
tree | e53a0caa7f2bccbe59e07de0874c655baf654681 /stdlib/source/lux.lux | |
parent | bd1523278490c1d07a82ad9deb481ebf29e61fdb (diff) |
- Fixed ordering issue with Lux arithmetic extensions.
- Fixed naming issue with extensions.
Diffstat (limited to '')
-rw-r--r-- | stdlib/source/lux.lux | 22 |
1 files changed, 10 insertions, 12 deletions
diff --git a/stdlib/source/lux.lux b/stdlib/source/lux.lux index 48540c114..bf92eb4db 100644 --- a/stdlib/source/lux.lux +++ b/stdlib/source/lux.lux @@ -1138,7 +1138,7 @@ (#.Cons export-meta #.Nil)) (#Function Nat (#Function Nat Nat)) - ("lux i64 -" param subject)) + ("lux i64 -" subject param)) (def:'' (n/* param subject) (#.Cons (doc-meta "Nat(ural) multiplication.") @@ -2204,9 +2204,7 @@ (def:''' low-mask (list) I64 - (|> 1 - ("lux i64 left-shift" 32) - ("lux i64 -" 1))) + ("lux i64 -" ("lux i64 left-shift" 32 1) 1)) (def:''' (low-bits value) (list) @@ -2376,7 +2374,7 @@ flat ("lux int *" ("lux coerce" Int quotient) ("lux coerce" Int param)) - remainder ("lux i64 -" flat subject)] + remainder ("lux i64 -" subject flat)] (if (n/< param remainder) quotient ("lux i64 +" 1 quotient))))) @@ -2389,7 +2387,7 @@ flat ("lux int *" ("lux coerce" Int div) ("lux coerce" Int param))] - [div ("lux i64 -" flat subject)])) + [div ("lux i64 -" subject flat)])) (def:''' #export (n/% param subject) (list [(tag$ ["lux" "doc"]) @@ -2398,14 +2396,14 @@ (let' [flat ("lux int *" ("lux coerce" Int (n// param subject)) ("lux coerce" Int param))] - ("lux i64 -" flat subject))) + ("lux i64 -" subject flat))) (do-template [<type> <name> <op> <doc>] [(def:''' #export (<name> param subject) (list [(tag$ ["lux" "doc"]) (text$ <doc>)]) (-> <type> <type> <type>) - (<op> param subject))] + (<op> subject param))] [ Int i/+ "lux i64 +" "Int(eger) addition."] [ Int i/- "lux i64 -" "Int(eger) substraction."] @@ -2476,7 +2474,7 @@ (if ("lux i64 =" +0 trailing-zeroes) [1 ("lux i64 logical-right-shift" 1 remaining)] [trailing-zeroes remaining])) - shift ("lux i64 -" trailing-zeroes 64) + shift ("lux i64 -" 64 trailing-zeroes) numerator ("lux i64 left-shift" shift 1)] ("lux coerce" Rev ("lux int *" @@ -5172,11 +5170,11 @@ )] ($_ text/compose "\"" escaped "\""))) -(do-template [<name> <special> <doc>] - [(def: #export <name> +(do-template [<name> <extension> <doc>] + [(def: #export (<name> value) {#.doc <doc>} (All [s] (-> (I64 s) (I64 s))) - (|>> (<special> 1)))] + (<extension> value 1))] [inc "lux i64 +" "Increment function."] [dec "lux i64 -" "Decrement function."] |