62940b3d24
conlang: More clippy
2025-09-15 00:17:50 -04:00
8b0a122dfc
cl-interpret: Environment/stack overhaul + Ref patterns
2025-07-18 05:29:10 -04:00
8ff17fd475
cl-ast: Add syntax support for generics
2025-04-22 07:22:44 -04:00
7ba808594c
cl-ast: Cleanup
...
- Function bind is now one Pattern
- TyRef now allows &Ty (i.e. &[i32], &(char, bool)
- Range patterns (they cannot bind, only check whether a value is in range
- ArrayRep repeat has been reverted to usize, for now, until early consteval is implemented.
2025-04-21 04:17:45 -04:00
b09a610c6c
interpreter: Include location in error type
2025-04-15 23:42:21 -04:00
584207fc8c
cl-structures::Interned: Change to_ref() from assoc. function to member function
...
(it's so much nicer)
2025-03-12 01:16:51 -05:00
7d3f189100
conlang: Introduce ..rest Patterns, refactor Ranges
2025-02-23 02:41:41 -06:00
cc6168b55e
cl-ast: Remove Param
, replace with flat Pattern
2025-02-23 02:01:38 -06:00
e3d94d8949
conlang: Unify binding operations!
...
This breaks out the pattern matching/unification algorithm from cl-interpret/interpret.rs to cl-interpret/pattern.rs
TODO: pattern destructuring in const, static :^)
2025-02-22 05:16:37 -06:00
7a8da33de9
cl-interpret: Tuple structs + fix tuple member access
2025-02-22 03:31:27 -06:00
edabbe1655
cl-interpret: process use items and imports in the interpreter
2025-02-18 21:44:52 -06:00
fd361f2bea
cl-interpret: Upvars 2.0
...
- Only captures locals
2025-01-28 06:13:38 -06:00
c50940a44c
cl-interpret: Make an attempt at closures
...
(It kinda sucks, but it emulates closures half decently)
2025-01-23 16:23:42 -06:00
ecebefe218
cl-interpret: Knock those modules free!
2024-07-27 22:47:46 -05:00