e422079fcc
Add a Byte datatype
2024-09-15 15:33:47 -04:00
c455e7b67d
Rename builtins/ -> stdlib/
2024-09-13 20:18:08 -04:00
4380039acc
Rename builtins to use plurals when appropriate
2024-09-13 20:08:20 -04:00
34c562e88e
Move cord helper functions into their own file
2024-09-13 14:23:24 -04:00
56a4d13975
Automatic promotion to single-argument enum tags with a unique type
2024-09-12 13:05:08 -04:00
9b30945c4d
Remove old code
2024-09-11 15:02:27 -04:00
273e2f995f
Rename channel_t -> Channel_t for consistency
2024-09-11 13:57:21 -04:00
dee3742b48
Optional structs
2024-09-11 12:01:17 -04:00
bba9f1b141
Optional fixed-size ints
2024-09-11 11:08:15 -04:00
7126755275
Add optional types
2024-09-11 01:31:31 -04:00
aeed1992e9
Fix nearly every GCC warning and add __attribute__((pure/const)) where
...
appropriate
2024-09-08 17:17:15 -04:00
391c1b6bde
Rename table_t -> Table_t
2024-09-05 14:57:31 -04:00
abe45a3c25
Rename array_t -> Array_t
2024-09-05 14:56:37 -04:00
620ebeab8d
Fixing string methods
2024-09-02 20:22:13 -04:00
337aa911a9
Auto promote to C String from Text
2024-09-02 19:53:09 -04:00
00a3117803
Bugfix
2024-09-02 19:07:51 -04:00
2055439be4
Variables can no longer hold function pointers, only closure_t's. This
...
makes error reporting easier and prevents issues where some functions
could be assigned, but not others. Also change outputs so Void returns
don't show up when displaying types, now just: `func()`
2024-08-21 00:49:22 -04:00
ccdf9d319f
Bugfix
2024-08-19 15:14:00 -04:00
934b843b1c
Add .text_content as a field on DSLs instead of a method
2024-08-19 14:29:58 -04:00
6f3b2c073a
Add enum.tag
as a way to do a boolean test for whether a value has a
...
particular tag or not
2024-08-18 20:58:36 -04:00
d804b09b02
Added a .length field to arrays/sets/tables, added a .max_size field to
...
channels, and updated the API
2024-08-18 20:28:39 -04:00
da4d07c665
Fix up some bigint logic issues
2024-08-18 12:47:29 -04:00
752ab8212c
Split BigIntType out of IntType and switch to using enums for the size
...
of ints/nums
2024-08-18 11:49:51 -04:00
2383d73645
Correct the logic to prevent promoting nums to ints automatically
2024-08-17 15:14:45 -04:00
aaac5dff28
Integers can have heap memory
2024-08-13 14:52:27 -04:00
d08f795794
Partially working first draft of bigints
2024-08-13 01:30:25 -04:00
2ecb5fe885
Add channels and threads
2024-08-11 14:47:34 -04:00
8d3d591312
Add Sets to the language
2024-08-10 15:15:38 -04:00
16c2e3f590
Incrementally moving towards passing array entry sizes explicitly
2024-08-03 15:06:59 -04:00
9fec3a6adb
Fix for reductions over iterators like (+) range(5, 10)
2024-07-13 19:58:21 -04:00
39576466a7
Add ReturnType(ret) so we can more accurately track return values for
...
`if` statements
2024-07-13 18:43:50 -04:00
7a741e65e6
Deprecate enum field access
2024-05-22 13:45:13 -04:00
a1d18fd422
Add C string type
2024-05-18 14:38:41 -04:00
e6297323ba
Check function return type when promoting
2024-05-13 14:45:49 -04:00
02fe49a764
Deprecate interfaces (RIP)
2024-05-12 20:13:19 -04:00
e171d4a98c
Fix up some promotion logic for closures
2024-05-12 19:21:44 -04:00
3c50c182a8
Typecheck method promotion for interfaces
2024-05-12 16:09:24 -04:00
4dbe046866
Add interface fields
2024-05-12 15:18:46 -04:00
d143c72b22
WIP, but functional interfaces
2024-05-12 13:50:06 -04:00
2e27b88c1b
Improved syntax for optionals
2024-04-30 13:18:47 -04:00
63e6ba596a
Change table syntax to {key:value} instead of {key=>value}
2024-04-13 13:39:44 -04:00
c73e96ff91
Add comparison operator <> and array method to sort by a custom
...
comparison function
2024-04-02 13:08:06 -04:00
adbb07fdc2
Module imports
2024-03-19 14:22:03 -04:00
a33f730617
Rearranging some files
2024-03-10 00:03:21 -05:00
2b83ab279d
Add langs to the language
2024-03-09 18:22:12 -05:00
b04a1b3090
Implement lambdas and closures
2024-03-09 16:03:38 -05:00
955f047e06
First pass at lambdas/closures
2024-03-09 14:02:19 -05:00
0921f3723b
Remove dead code
2024-03-09 13:11:57 -05:00
6bb1ebf031
Remove spurious promotion between structs
2024-03-08 13:04:04 -05:00
8fab88c56f
Rename Str -> Text
2024-03-03 18:15:45 -05:00