|
6086b2dbda
|
Expose PathType as a proper enum
|
2025-03-18 17:00:30 -04:00 |
|
|
dd4ff777f4
|
Rename/rework global env functions
|
2025-03-18 01:48:35 -04:00 |
|
|
f51acef40e
|
Overhaul of Path so it uses root and array of components instead of
stringly typed
|
2025-03-15 14:22:11 -04:00 |
|
|
7c68fc9585
|
Fix some scoping issues with type methods and enum returns
|
2025-03-10 13:33:31 -04:00 |
|
|
39dd1ca27d
|
Add convert keyword for defining conversions
|
2025-03-10 12:42:45 -04:00 |
|
|
fab0083129
|
Support post-hoc definitions of escaping rules for DSLs
|
2025-03-01 16:04:14 -05:00 |
|
|
91f66d80bb
|
Support arbitrary argument constructors
|
2025-02-20 17:13:50 -05:00 |
|
|
058a028aef
|
Switch to langs using constructors
|
2025-02-19 18:50:50 -05:00 |
|
|
b89291957a
|
Restructure compile_file() so it moves a bit more towards less usage of
side effects
|
2025-02-19 16:30:19 -05:00 |
|
|
5be9559046
|
Deprecate Range datatype in favor of using iterator methods
|
2025-02-13 15:03:22 -05:00 |
|
|
f4d0f7f6d9
|
Reorder code corresponding to how it outputs
|
2025-02-10 14:24:14 -05:00 |
|
|
66eca49d18
|
Tweak set_binding() API
|
2025-02-10 13:13:45 -05:00 |
|
|
be87d8169d
|
Convert the logic for finding closed variables to a more pure functional
style with fewer side effects
|
2025-02-09 13:57:54 -05:00 |
|
|
2ff7c1aa71
|
Move REPL code out of binding_t struct
|
2025-02-06 14:18:52 -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 |
|
|
fc9a6f1416
|
Add RNGs to the language
|
2024-11-03 22:37:48 -05:00 |
|
|
ed8b8901c0
|
Add '$' prefix on all user code
|
2024-09-24 14:54:22 -04:00 |
|
|
708e7b9070
|
Remove dead code
|
2024-09-18 01:02:13 -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 |
|
|
da9cc93c46
|
Make functions print with func name(...)->... [file:line] info
|
2024-09-12 23:41:32 -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 |
|
|
a4fff5cb49
|
Bugfix for default arguments not supporting enclosing types
|
2024-09-08 21:55:15 -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 |
|
|
5feecff9d9
|
Deprecate Where and change channel API to use a boolean front value
|
2024-09-03 03:53:36 -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 |
|
|
4e732a718d
|
Restructure things so that DSL constructors do proper escaping
|
2024-08-19 13:23:02 -04:00 |
|
|
8363d53bd2
|
Update channel API to take a Where parameter
|
2024-08-18 23:59:13 -04:00 |
|
|
cbe117a6d3
|
Allow for top-level or namespace-level variables that are initialized
with non-constant values by the use of an initializer function and
runtime checks for whether the variable is initialized.
|
2024-08-17 14:41:31 -04:00 |
|
|
2ecb5fe885
|
Add channels and threads
|
2024-08-11 14:47:34 -04:00 |
|
|
c045c54309
|
Add a Range datatype with creation methods like 5:to(10) and
modification methods like `range:by(2)` or `range:reversed()`
|
2024-08-05 14:40:28 -04:00 |
|
|
d3f14cf53c
|
Support nested lambda closures
|
2024-07-14 14:13:23 -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 |
|
|
9f8be0c502
|
Support library name as a separate environment field from namespace
|
2024-06-16 16:08:35 -04:00 |
|
|
7a53e10826
|
Fix issue with type namespaces not getting properly prefixed by library
namespace
|
2024-06-16 15:12:00 -04:00 |
|
|
81d55cacb7
|
Do dynamic library symbol prefixing using 'patchelf'
|
2024-06-13 21:20:50 -04:00 |
|
|
f834073264
|
Fix issue with importing modules
|
2024-06-06 16:36:49 -04:00 |
|
|
8c7d530080
|
Split header compilation into a separate function
|
2024-06-06 16:28:53 -04:00 |
|
|
6c01eef851
|
Introducing the main() function
|
2024-04-12 13:09:31 -04:00 |
|
|
838c9963fc
|
Adding a REPL
|
2024-03-30 12:14:24 -04:00 |
|
|
04d9adc813
|
Switch naming convention to use '$' in symbols more
|
2024-03-29 12:54:31 -04:00 |
|
|
f21fc700bb
|
Handle type namespaces in other modules
|
2024-03-22 01:52:00 -04:00 |
|
|
4592e95fa9
|
Pull namespaces from the type binding
|
2024-03-21 13:33:10 -04:00 |
|
|
adbb07fdc2
|
Module imports
|
2024-03-19 14:22:03 -04:00 |
|
|
ced54c2919
|
More file comments
|
2024-03-18 12:49:38 -04:00 |
|
|
655b677895
|
Preface symbols with file prefix
|
2024-03-17 20:40:40 -04:00 |
|
|
a0faef7102
|
Support nested comprehensions
|
2024-03-17 15:26:25 -04:00 |
|
|
46decc9232
|
Skip/stop for 'while' loops
|
2024-03-15 13:45:25 -04:00 |
|