Commit Graph

1218 Commits

Author SHA1 Message Date
145a078387 Make the compiler stricter about not promoting local value variables to
pointers
2024-11-09 17:26:01 -05:00
8dd51a113e Bugfix integer literal demotion in assignment statements 2024-11-09 16:59:34 -05:00
06d3ec1380 Bugfix for fixed-size integer ranges 2024-11-09 16:55:44 -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
7a4f2e73ad Rename from_text() to parse() 2024-11-09 15:11:11 -05:00
5d35f28633 Improve reductions so they work better nested and also have bespoke code
optimized for min/max and argmin/argmax.
2024-11-08 14:10:19 -05:00
9c842201f3 Bugfix for parsing empty method call names 2024-11-07 14:42:24 -05:00
bd3df66165 Fix up some stuff with boolean operators and reductions 2024-11-07 13:27:09 -05:00
3d9e562e2c Add byte hex tests 2024-11-05 15:34:01 -05:00
a8a35ea688 Add Byte.hex() 2024-11-05 15:33:08 -05:00
b238f1df41 Fix up old-style reducers 2024-11-05 15:20:47 -05:00
b8d7eabc02 Deprecate bit-width integer/num literals in favor of using type
constructors
2024-11-05 15:18:32 -05:00
2fa26e6af3 Be much more permissive about using integer literals for fixed-size ints
or nums or bytes
2024-11-04 15:24:10 -05:00
da5bd87c13 Minor code cleanup 2024-11-04 13:06:11 -05:00
20096c8e81 Fix for blocking reads 2024-11-04 01:37:51 -05:00
8b619fdef0 Add base64 lib 2024-11-04 01:33:54 -05:00
dc7289b239 Fix for optional langs 2024-11-04 01:24:28 -05:00
aabc0a3cff Update text API to use optional returns when applicable 2024-11-04 01:17:47 -05:00
b69d14b894 Add some missing functionality for Bytes 2024-11-04 01:12:37 -05:00
81a180eda0 RNG seed should be non-optional 2024-11-03 22:45:49 -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
52e3d3fe6f Update Path:read_bytes() API to take a byte count 2024-11-03 16:58:12 -05:00
7ddb2ffb02 Fix per-thread RNG 2024-11-03 16:21:40 -05:00
5e767e1c38 Make Int.random() use thread-local state 2024-11-03 16:11:05 -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
792743dff3 Add Int64:unsigned_left_shift() and :unsigned_right_shift() 2024-11-03 15:27:44 -05:00
f656c9eb26 Better error messaging for binops and support for bit shifting by an
integer literal (without a bit size)
2024-11-03 15:15:03 -05:00
87176ead2d Add wrapping plus/minus for fixed-size integers 2024-11-03 15:04:28 -05:00
87d3bf928a Fix error message 2024-11-03 13:48:40 -05:00
078b443185 Add a repeat keyword 2024-11-03 12:20:53 -05:00
d905fa4888 Minor fix 2024-11-03 11:25:18 -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
985011aed8 Update header 2024-11-02 13:53:22 -04:00
be2673ef2b Make Text:find() return an optional int 2024-11-02 13:51:58 -04:00
a60e0e5e9a Remove unused args for end_test() 2024-10-31 01:30:12 -04:00
bbbfc692fc Tweak doctest output so it outputs source info 2024-10-31 01:28:58 -04:00
e0fb49376b Fix type members not appearing in headers for declared values 2024-10-30 14:28:20 -04:00
de3628c5b5 Fix for methods not appearing in headers 2024-10-30 14:27:02 -04:00
a8766be2ae Make compiler output spam a little dimmer 2024-10-30 14:09:56 -04:00
fb683a2b1b Organize typedef headers so the typedefs come before the namespace
members
2024-10-30 14:02:34 -04:00
bdca4fc6e1 Fix header inline functions to use extern inline and some GCC magic 2024-10-30 13:59:15 -04:00
a0178a1e0c Bugfix for empty struct typeinfos 2024-10-30 02:44:15 -04:00
61af5802a7 Remove redundant warnings 2024-10-30 02:16:39 -04:00
9ebb039a81 Fix up some GCC compiler flag options for LTO and inlining 2024-10-29 23:14:31 -04:00
3e019df9f4 Add -Werror to tomo compile flags 2024-10-29 22:23:48 -04:00
7cd67dd7f3 Add file globbing 2024-10-29 14:36:49 -04:00