@mojir/lits 2.5.1 → 2.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +10 -11
- package/dist/cli/cli.js +2150 -1202
- package/dist/cli/reference/api.d.ts +15 -11
- package/dist/cli/reference/index.d.ts +133 -132
- package/dist/cli/src/builtin/bindingNode.d.ts +5 -0
- package/dist/cli/src/builtin/core/assertion.d.ts +2 -0
- package/dist/cli/src/builtin/index.d.ts +2 -2
- package/dist/cli/src/builtin/interface.d.ts +2 -1
- package/dist/cli/src/builtin/modules/convert/index.d.ts +2 -0
- package/dist/cli/src/builtin/specialExpressionTypes.d.ts +1 -1
- package/dist/cli/src/builtin/specialExpressions/match.d.ts +7 -0
- package/dist/cli/src/parser/subParsers/parseBindingTarget.d.ts +4 -2
- package/dist/cli/src/parser/subParsers/parseMatch.d.ts +4 -0
- package/dist/cli/src/parser/types.d.ts +5 -1
- package/dist/full.esm.js +1 -1
- package/dist/full.esm.js.map +1 -1
- package/dist/full.js +1 -1
- package/dist/full.js.map +1 -1
- package/dist/index.esm.js +1 -1
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/lits.iife.js +1 -1
- package/dist/lits.iife.js.map +1 -1
- package/dist/modules/assertion.esm.js +2 -0
- package/dist/modules/assertion.esm.js.map +1 -0
- package/dist/modules/assertion.js +2 -0
- package/dist/modules/assertion.js.map +1 -0
- package/dist/modules/collection.esm.js +1 -1
- package/dist/modules/collection.esm.js.map +1 -1
- package/dist/modules/collection.js +1 -1
- package/dist/modules/collection.js.map +1 -1
- package/dist/modules/convert.esm.js +2 -0
- package/dist/modules/convert.esm.js.map +1 -0
- package/dist/modules/convert.js +2 -0
- package/dist/modules/convert.js.map +1 -0
- package/dist/modules/grid.esm.js +1 -1
- package/dist/modules/grid.esm.js.map +1 -1
- package/dist/modules/grid.js +1 -1
- package/dist/modules/grid.js.map +1 -1
- package/dist/modules/linear-algebra.esm.js +1 -1
- package/dist/modules/linear-algebra.esm.js.map +1 -1
- package/dist/modules/linear-algebra.js +1 -1
- package/dist/modules/linear-algebra.js.map +1 -1
- package/dist/modules/math.esm.js +1 -1
- package/dist/modules/math.esm.js.map +1 -1
- package/dist/modules/math.js +1 -1
- package/dist/modules/math.js.map +1 -1
- package/dist/modules/matrix.esm.js +1 -1
- package/dist/modules/matrix.esm.js.map +1 -1
- package/dist/modules/matrix.js +1 -1
- package/dist/modules/matrix.js.map +1 -1
- package/dist/modules/random.esm.js +1 -1
- package/dist/modules/random.esm.js.map +1 -1
- package/dist/modules/random.js +1 -1
- package/dist/modules/random.js.map +1 -1
- package/dist/modules/reference/api.d.ts +15 -11
- package/dist/modules/reference/index.d.ts +133 -132
- package/dist/modules/sequence.esm.js +1 -1
- package/dist/modules/sequence.esm.js.map +1 -1
- package/dist/modules/sequence.js +1 -1
- package/dist/modules/sequence.js.map +1 -1
- package/dist/modules/src/builtin/bindingNode.d.ts +5 -0
- package/dist/modules/src/builtin/core/assertion.d.ts +2 -0
- package/dist/modules/src/builtin/index.d.ts +2 -2
- package/dist/modules/src/builtin/interface.d.ts +2 -1
- package/dist/modules/src/builtin/modules/convert/index.d.ts +2 -0
- package/dist/modules/src/builtin/specialExpressionTypes.d.ts +1 -1
- package/dist/modules/src/builtin/specialExpressions/match.d.ts +7 -0
- package/dist/modules/src/full.d.ts +1 -1
- package/dist/modules/src/modules/assertion.d.ts +2 -0
- package/dist/modules/src/modules/{assert.d.ts → convert.d.ts} +1 -1
- package/dist/modules/src/parser/subParsers/parseBindingTarget.d.ts +4 -2
- package/dist/modules/src/parser/subParsers/parseMatch.d.ts +4 -0
- package/dist/modules/src/parser/types.d.ts +5 -1
- package/dist/modules/string.esm.js +1 -1
- package/dist/modules/string.esm.js.map +1 -1
- package/dist/modules/string.js +1 -1
- package/dist/modules/string.js.map +1 -1
- package/dist/modules/vector.esm.js +1 -1
- package/dist/modules/vector.esm.js.map +1 -1
- package/dist/modules/vector.js +1 -1
- package/dist/modules/vector.js.map +1 -1
- package/dist/reference/api.d.ts +15 -11
- package/dist/reference/index.d.ts +133 -132
- package/dist/src/builtin/bindingNode.d.ts +5 -0
- package/dist/src/builtin/core/assertion.d.ts +2 -0
- package/dist/src/builtin/index.d.ts +2 -2
- package/dist/src/builtin/interface.d.ts +2 -1
- package/dist/src/builtin/modules/convert/index.d.ts +2 -0
- package/dist/src/builtin/specialExpressionTypes.d.ts +1 -1
- package/dist/src/builtin/specialExpressions/match.d.ts +7 -0
- package/dist/src/full.d.ts +1 -1
- package/dist/src/modules/assertion.d.ts +2 -0
- package/dist/src/modules/{assert.d.ts → convert.d.ts} +1 -1
- package/dist/src/parser/subParsers/parseBindingTarget.d.ts +4 -2
- package/dist/src/parser/subParsers/parseMatch.d.ts +4 -0
- package/dist/src/parser/types.d.ts +5 -1
- package/dist/testFramework.esm.js +1 -1
- package/dist/testFramework.esm.js.map +1 -1
- package/dist/testFramework.js +1 -1
- package/dist/testFramework.js.map +1 -1
- package/package.json +10 -5
- package/dist/cli/src/builtin/specialExpressions/switch.d.ts +0 -6
- package/dist/cli/src/parser/subParsers/parseSwitch.d.ts +0 -4
- package/dist/modules/assert.esm.js +0 -2
- package/dist/modules/assert.esm.js.map +0 -1
- package/dist/modules/assert.js +0 -2
- package/dist/modules/assert.js.map +0 -1
- package/dist/modules/src/builtin/specialExpressions/switch.d.ts +0 -6
- package/dist/modules/src/parser/subParsers/parseSwitch.d.ts +0 -4
- package/dist/src/builtin/specialExpressions/switch.d.ts +0 -6
- package/dist/src/parser/subParsers/parseSwitch.d.ts +0 -4
- /package/dist/cli/src/builtin/modules/{assert → assertion}/docs.d.ts +0 -0
- /package/dist/cli/src/builtin/modules/{assert → assertion}/index.d.ts +0 -0
- /package/dist/modules/src/builtin/modules/{assert → assertion}/docs.d.ts +0 -0
- /package/dist/modules/src/builtin/modules/{assert → assertion}/index.d.ts +0 -0
- /package/dist/src/builtin/modules/{assert → assertion}/docs.d.ts +0 -0
- /package/dist/src/builtin/modules/{assert → assertion}/index.d.ts +0 -0
package/README.md
CHANGED
|
@@ -204,11 +204,10 @@ let lin = import(linear-algebra);
|
|
|
204
204
|
[]; // This is NOT a vector (empty)
|
|
205
205
|
|
|
206
206
|
// Vector creation functions
|
|
207
|
-
vec.zeros(5); // => [0, 0, 0, 0, 0]
|
|
208
|
-
vec.ones(3); // => [1, 1, 1]
|
|
209
207
|
vec.linspace(0, 10, 5); // => [0, 2.5, 5, 7.5, 10]
|
|
210
|
-
|
|
211
|
-
|
|
208
|
+
repeat(0, 5); // => [0, 0, 0, 0, 0]
|
|
209
|
+
repeat(1, 3); // => [1, 1, 1]
|
|
210
|
+
repeat(3.14, 4); // => [3.14, 3.14, 3.14, 3.14]
|
|
212
211
|
|
|
213
212
|
// Vector mathematical operations (use lin module for vector math)
|
|
214
213
|
lin.dot([1, 2, 3], [4, 5, 6]); // => 32 (dot product)
|
|
@@ -632,26 +631,26 @@ end;
|
|
|
632
631
|
// => "high"
|
|
633
632
|
```
|
|
634
633
|
|
|
635
|
-
####
|
|
634
|
+
#### Match
|
|
636
635
|
|
|
637
636
|
```lits
|
|
638
637
|
let x = 1;
|
|
639
638
|
|
|
640
|
-
//
|
|
641
|
-
|
|
639
|
+
// Match on value
|
|
640
|
+
match x
|
|
642
641
|
case 0 then "zero"
|
|
643
642
|
case 1 then "one"
|
|
644
643
|
case 2 then "two"
|
|
645
644
|
end;
|
|
646
645
|
// => "one"
|
|
647
646
|
|
|
648
|
-
//
|
|
647
|
+
// Match with multiple cases
|
|
649
648
|
let userInput = "help";
|
|
650
649
|
let exit = () -> "exiting";
|
|
651
650
|
let showHelp = () -> "showing help";
|
|
652
651
|
let saveData = () -> "saving data";
|
|
653
652
|
|
|
654
|
-
|
|
653
|
+
match userInput
|
|
655
654
|
case "quit" then exit()
|
|
656
655
|
case "help" then showHelp()
|
|
657
656
|
case "save" then saveData()
|
|
@@ -1333,7 +1332,7 @@ Here's the complete precedence table, from highest to lowest:
|
|
|
1333
1332
|
|
|
1334
1333
|
// Pipe has very low precedence
|
|
1335
1334
|
let vec = import(vector);
|
|
1336
|
-
[1, 2, 3] |> map(_, inc) |>
|
|
1335
|
+
[1, 2, 3] |> map(_, inc) |> sum; // Evaluates left to right
|
|
1337
1336
|
|
|
1338
1337
|
// Conditional has lowest precedence
|
|
1339
1338
|
true ? 2 + 3 : 4 + 5; // => true ? 5 : 9 = 5
|
|
@@ -1515,7 +1514,7 @@ import { matrixModule } from '@mojir/lits/modules/matrix';
|
|
|
1515
1514
|
import { linearAlgebraModule } from '@mojir/lits/modules/linearAlgebra';
|
|
1516
1515
|
import { gridModule } from '@mojir/lits/modules/grid';
|
|
1517
1516
|
import { randomModule } from '@mojir/lits/modules/random';
|
|
1518
|
-
import { assertModule } from '@mojir/lits/modules/
|
|
1517
|
+
import { assertModule } from '@mojir/lits/modules/assertion';
|
|
1519
1518
|
import { numberTheoryModule } from '@mojir/lits/modules/numberTheory';
|
|
1520
1519
|
```
|
|
1521
1520
|
|