Commit Graph

17 Commits

Author SHA1 Message Date
4d92954a5f main: expand the repl's capabilities to include debug + all syntactic positions 2026-01-03 22:03:10 -05:00
4a38a0ebbf main: Put the expression body on line after byte-span 2025-12-23 05:01:53 -05:00
bb10056f38 main: Print span of expressions, by parsing them as Anno 2025-11-02 01:10:36 -04:00
8e2bc5ad85 src: Split parser into modules, reorganize AST 2025-10-28 22:15:06 -04:00
287b57abd7 main: print parse stats when parse errors 2025-10-24 05:25:38 -04:00
b80a3a55c3 ast: Merge Ty into Pat, merge Mod and Fn into Bind 2025-10-20 04:24:21 -04:00
22094f4862 main: Clear screen on mode change 2025-10-20 00:40:22 -04:00
db9c75b3c6 ast: formatting; main: explicit verbosity 2025-10-17 06:57:21 -04:00
6368e68941 doughlang: Preserve errors through entire pipeline
lexer:
- Un-stringify errors
- Reserve more words
- Doc the comments

parser:
- MASSIVE changes to peek, peek_if, next_if, consume_if=>expect.
- Keep track of when EOF is allowable
- TKind is stupidly cheap with >100 niches, so we can fit like 4 of them in a single ParseError lmao
- TODO: make sure EOF/UnexpectedEOF propagation is correct. It seems... Kinda Not correct.
- Add meta-expressions
2025-10-17 06:25:11 -04:00
1998558468 doughlang: "fix" semi elision, add "fully qualified" paths, add proper pattern prec parsing.
This actually gets some old code parsing!
2025-10-16 05:49:02 -04:00
95abb81f4a main: ty parser test mode, visually distinct prompt 2025-10-16 01:38:52 -04:00
b5d552376e Move integer and char parsing out of the parser and back into the lexer 2025-10-10 14:45:08 -04:00
222b2d7b98 ast: struct 2025-10-07 05:00:51 -04:00
8640ec4261 ast: fn main, structification
parser: unified post/infix, context-full grammar
repl: modes
2025-09-21 02:57:20 -04:00
7b05da1334 do: Elaborate on pattern syntax, add binary as operator 2025-09-16 04:18:12 -04:00
b6949147c4 parser: Refactor coagulated binops as postfix operators
This allows them to intermingle more nicely with `Try`
2025-09-15 10:28:08 -04:00
c83218d750 Initial Commit 2025-08-28 02:26:06 -04:00