Commit Graph

234 Commits

Author SHA1 Message Date
645d66e0de Change table syntax to {key=value} and {:K,V}/{K,V} 2025-01-12 16:49:58 -05:00
b025cf269d Use holding blocks for mutexed data instead of lambdas 2025-01-02 20:29:55 -05:00
be384c0caa Replace threads with generic mutexed datastructures. 2025-01-02 16:24:07 -05:00
2fcf1939bb Fix for heap_pop() test in arrays 2024-12-31 16:23:16 -05:00
156d54a73e Add array:pop() 2024-12-31 15:46:53 -05:00
38b3b7b181 Add lang test for indexing 2024-12-26 17:32:10 -05:00
acd3f2d39e Add text indexing 2024-12-26 17:31:33 -05:00
59b31083a6 Change table hashing and comparison logic to be *unordered*, but still
O(N)
2024-12-26 16:52:47 -05:00
695049bef9 Add integer tests 2024-12-24 14:20:55 -05:00
325b367a13 Support logical binary operators on optionals (promote to booleans) 2024-12-21 15:13:26 -05:00
478ddad9aa Add Text:reversed() 2024-12-19 15:32:19 -05:00
c6c7cc7272 Revert "Deprecate "&" for stack references"
This reverts commit 41c0ea851a.
2024-12-18 14:44:37 -05:00
37f3e91f6c Rename "NONE" to "none" 2024-12-07 16:04:25 -05:00
40c33987fa Bring back table[key] syntax 2024-11-30 15:50:54 -05:00
f3fc7558bb Deprecate 'array ++= item' syntax 2024-11-30 15:34:35 -05:00
69613e6c03 Tweak serialization syntax 2024-11-29 19:57:50 -05:00
e2fa11b7fe Rename :serialize() -> :serialized() 2024-11-29 19:39:17 -05:00
6d2017d5b8 Add serialization test case 2024-11-29 19:34:31 -05:00
f66f8ad711 Add serialization and deserialization 2024-11-29 18:09:12 -05:00
922b585700 Tweaks to NONE parsing and tests 2024-11-25 15:59:35 -05:00
d4b10514fb Clean up some more null->none renames and fix the documentation. Also
change the literal syntax to `NONE:T` instead of `!T`
2024-11-24 16:36:27 -05:00
1e3fb8a2c0 Rename "NULL" to "NONE" 2024-11-24 16:18:21 -05:00
0e10313d64 Switch NaN to be identical to the null value 2024-11-24 16:13:23 -05:00
f868d02b08 Add NULL as a syntax for null values. 2024-11-21 13:00:53 -05:00
90573ba7a1 Tweak behavior for printing recursive structures 2024-11-19 15:45:33 -05:00
2c904ff173 Go back to stringifying integers/num32s/bytes without the type
constructor.
2024-11-19 13:41:52 -05:00
4720ca7a5f Rename Text.utf8_bytes back to Text.bytes 2024-11-19 13:30:45 -05:00
4231789b71 Rename datetime -> moment 2024-11-17 14:49:03 -05:00
145a078387 Make the compiler stricter about not promoting local value variables to
pointers
2024-11-09 17:26:01 -05:00
898bee1581 Introduce a Match struct to represent pattern matching results, which
improves the usability of a lot of the APIs. Also bugfix some issues
with ranges.
2024-11-09 16:27:54 -05:00
3d9e562e2c Add byte hex tests 2024-11-05 15:34:01 -05:00
b8d7eabc02 Deprecate bit-width integer/num literals in favor of using type
constructors
2024-11-05 15:18:32 -05:00
aabc0a3cff Update text API to use optional returns when applicable 2024-11-04 01:17:47 -05:00
d0ebb66b30 Fix up test to use RNGs 2024-11-03 22:39:46 -05:00
fc9a6f1416 Add RNGs to the language 2024-11-03 22:37:48 -05:00
7ccb7a8a9b Use an RNG parameter for array:random(), array:shuffle(),
array:shuffled()
2024-11-03 16:10:03 -05:00
39a58bc129 Clean up behavior and syntax for unsigned bit shifts (<<<, >>>) 2024-11-03 16:06:26 -05:00
3743913ce2 Add unsigned integer shifts 2024-11-03 15:48:13 -05:00
078b443185 Add a repeat keyword 2024-11-03 12:20:53 -05:00
92a593b80f Support reductions for comparison operators like == and < 2024-11-02 22:34:35 -04:00
0b7a0dd043 Change reducers to use (OP: ...) syntax and return an optional value 2024-11-02 20:22:19 -04:00
be2673ef2b Make Text:find() return an optional int 2024-11-02 13:51:58 -04:00
7cd67dd7f3 Add file globbing 2024-10-29 14:36:49 -04:00
052316261a Finish deprecating stack refs with & 2024-10-27 20:35:30 -04:00
0d615443dc Update DateTime API to have separate methods for getting each component
instead of get(...)
2024-10-27 18:41:00 -04:00
074cf22ad4 Change function syntax from func(args)->ret to func(args -> ret) 2024-10-09 13:26:28 -04:00
a3dab7e726 Add a test for mutating closed-over variables in a defer statement 2024-10-09 00:47:42 -04:00
5103fde1c5 Add a test for optionals to ensure they size correctly 2024-10-08 13:39:45 -04:00
6b9055db7c Deprecate readonly pointers for now 2024-10-04 13:21:56 -04:00
ec0606091b Add datetime literal and tests 2024-09-30 13:55:55 -04:00