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
34c562e88e
Move cord helper functions into their own file
2024-09-13 14:23:24 -04:00
46a2aa2ffc
Fix up comprehensions so set comprehensions work and everything is a bit
...
more clean
2024-09-12 14:27:13 -04:00
fa7e52787f
Add postfix !
operator for optionals
2024-09-12 00:13:53 -04:00
b0b23acf88
Rename "Nil"->"Null" for consistency
2024-09-11 13:55:41 -04:00
210179ee67
Optional enums (deprecated custom tag values)
2024-09-11 12:29:48 -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
d1b2e9f598
Disallow 'use' statements that aren't top level
2024-09-04 13:48:26 -04:00
ad51b208b4
Overhaul of import syntax. Now everything uses use
: use foo
, `use
...
./foo.tm`, `use <foo.h>`, `use libfoo.so`
2024-08-22 14:02:48 -04:00
967b649da2
Deprecate #
operator in favor of .length and fix up some issues
2024-08-18 20:39:57 -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
d08f795794
Partially working first draft of bigints
2024-08-13 01:30:25 -04:00
d2f4d07585
Support channels with maximum size
2024-08-11 15:04:22 -04:00
2ecb5fe885
Add channels and threads
2024-08-11 14:47:34 -04:00
b37bd70b60
For tables, deprecate support for square bracket indexing and .default
...
values, replacing them with a `:bump()` function for tables with numeric
values. This means that counters can be implemented easily without the
need to mask complexity.
2024-08-10 16:03:41 -04:00
8d3d591312
Add Sets to the language
2024-08-10 15:15:38 -04:00
b2e752ee32
Replace heap_str with GC_strdup
2024-07-26 13:30:24 -04:00
445f79cb70
Add iterator functions
2024-07-13 17:17:58 -04:00
6a105fbd80
Add 'defer'
2024-07-04 18:00:01 -04:00
9d9fe12987
Add !!
statement for printing text
2024-07-04 16:23:05 -04:00
f391c929e5
Add math metamethods (__add, __sub, etc.)
2024-07-01 11:12:00 -04:00
dab2c399f1
Split import/use into separate concepts
2024-06-13 13:17:51 -04:00
5d682df66c
Remove unused fields on AST
2024-06-13 13:03:13 -04:00
8c7d530080
Split header compilation into a separate function
2024-06-06 16:28:53 -04:00
1df26851d7
Add syntax for "inline C(...)"
2024-05-18 16:31:34 -04:00
02fe49a764
Deprecate interfaces (RIP)
2024-05-12 20:13:19 -04:00
3481042259
Simplify interfaces by requiring all functions are pointer methods
2024-05-12 15:56:24 -04:00
d143c72b22
WIP, but functional interfaces
2024-05-12 13:50:06 -04:00
c2daf6a928
Clean up 'when' syntax
2024-05-01 13:53:51 -04:00
2e27b88c1b
Improved syntax for optionals
2024-04-30 13:18:47 -04:00
fbb25decf0
Support struct literals as constants
2024-04-23 12:50:30 -04:00
e98f6854f5
Use leading underscore for file-local variables and functions instead of
...
"private" keyword
2024-04-17 13:44:01 -04:00
4f514378ac
Fix corecursive functions and global variables
2024-04-10 11:49:43 -04:00
c73e96ff91
Add comparison operator <> and array method to sort by a custom
...
comparison function
2024-04-02 13:08:06 -04:00
135e23094c
Improve codegen for table/array iteration by inlining the iteration
...
macros
2024-03-26 14:02:48 -04:00
1c9d47c29f
Print ASTs as XML instead of janky custom syntax
2024-03-24 19:04:57 -04:00
5157988efa
Implement 'extern' functionality
2024-03-24 15:06:59 -04:00
a47bd2d569
Improvements to module imports
2024-03-19 23:29:32 -04:00
ced54c2919
More file comments
2024-03-18 12:49:38 -04:00
9932841530
Improve comprehensions for both arrays and tables
2024-03-17 14:46:36 -04:00
a33f730617
Rearranging some files
2024-03-10 00:03:21 -05:00
cbdd357b41
Deprecate secret langs (just use one-member structs)
2024-03-09 19:02:13 -05:00
2b83ab279d
Add langs to the language
2024-03-09 18:22:12 -05:00
e29aa52460
Struct and enum methods and static members
2024-03-04 13:51:47 -05:00
8fab88c56f
Rename Str -> Text
2024-03-03 18:15:45 -05:00
4dc70c84d4
First working method calls
2024-02-29 13:49:24 -05:00
741617a17e
Add for-else block
2024-02-25 16:02:36 -05:00
106704b956
Improve enums with metamethods
2024-02-24 15:24:44 -05:00