Commit graph

56 commits

Author SHA1 Message Date
fc2c9a5629 xo-interpreter: handle assignment expressions 2025-11-25 14:31:05 -05:00
628fcc44a1 xo-reader: fix hardwired debug flag 2025-11-19 09:39:03 -05:00
3c0dffe019 refactor xo::ast -> xo::scm + restore nodef ppdetail_atomic build 2025-07-28 10:13:25 -04:00
53b6eaebd0 xo-reader: parse expr with operator != 2025-07-27 19:00:12 -04:00
178144aadb xo-expression: + operator >= 2025-07-27 18:57:48 -04:00
afe2709757 xo-expression: less-than-or-equal 2025-07-27 18:19:54 -04:00
de26533745 xo-expression xo-reader: integer comparisons !=, <, > 2025-07-27 14:32:31 -04:00
d39235c619 xo-reader: integer arithmetic + parser + pretty-printing adds 2025-07-27 13:35:20 -04:00
cb7107521b xo-reader xo-expression xo-tokenizer xo-jit: comparison + apply 2025-07-23 23:19:16 -05:00
3573ec800a xo-tokenizer xo-reader: + bool literals + if-expr parsing 2025-07-22 07:20:56 -05:00
1f532c17ed xo-reader: better errors in progress_xs 2025-07-20 09:49:59 -05:00
c0587aa4fb pretty printing -- copmlete for xo::ast::GeneralizedExpression 2025-07-19 11:47:03 -05:00
adc0ca287e xo-reader: + pretty-printing support [WIP] 2025-07-13 21:21:20 -05:00
d46c3a2082 xo-reader xo-expression: nested lambdas working properly + docs 2025-07-06 14:13:44 -05:00
d1473f0405 xo-reader: prefer xo::bp spelling to xo::ref::brw 2025-07-05 13:54:34 -05:00
2bf7c3d9dc xo-reader: distinguish interactive sessions
+ allow top-level i64 literals
2025-07-04 10:10:40 -05:00
c46c0f1cc4 xo-reader: ++ logging 2024-08-28 12:58:49 -04:00
84e6d3f347 xo-reader: ++ logging 2024-08-28 09:34:30 -04:00
bc30b34bc2 xo-reader: + on_expr_with_semicolon() [wip, utest not passing] 2024-08-28 09:33:58 -04:00
1145830bb1 xo-parser: feat: + assign operator handling [wip, untested] 2024-08-27 16:23:04 -04:00
8db0bf11d0 xo-reader: simplify progress_xs.start() using psm 2024-08-19 16:53:43 -04:00
0b0c424b84 xo-reader: simplify expect_expr_xs,expect_lparen_xs using qsm 2024-08-19 16:48:58 -04:00
b988bc6790 xo-reader: parsestatemachine.top_exprstate() + use to simplify 2024-08-19 15:55:36 -04:00
4232da4ef2 xo-reader: streamline: + parserstatemachine::pop_exprstate() + use 2024-08-19 13:54:58 -04:00
bcb2af4a56 xo-reader: split: exprstatestack to own .*pp files 2024-08-19 13:48:47 -04:00
bdf75d5620 xo-reader: parserstatemachine -> consolidate on_expr() args 2024-08-19 12:17:26 -04:00
370722b086 xo-parser: parserstatemachine -> consolidate on_typedescr() args 2024-08-19 11:51:45 -04:00
b02d1e17e4 xo-reader: refactor: parserstatemachine to consolidate on_input() 2024-08-19 11:39:27 -04:00
bda115037b xo-reader: refactor: use parsestatemachine w/ on_symbol_token() 2024-08-19 01:03:18 -04:00
034dac7dfd xo-reader: refactor: + parserstatemachine; use for def_expr 2024-08-19 00:44:34 -04:00
79c4b59a19 xo-reader: refactor: minor streamlining in progress_xs 2024-08-19 00:10:13 -04:00
8c0ddab587 xo-reader: minor: missed progress_xs refactor to use .start() 2024-08-19 00:08:14 -04:00
6d73caf308 xo-reader: refactor: simplify progress_xs api 2024-08-19 00:06:34 -04:00
9a42f02f0c xo-reader: refactor: simplify expect_expr_xs api 2024-08-18 23:53:06 -04:00
c36e8cae40 xo-reader: feat: support operator precedence for *,/ over +,- 2024-08-15 00:36:02 -04:00
bba6898ee1 xo-reader: fix+prep: setup for associative behaviore 2024-08-15 00:14:55 -04:00
29596a7c1d xo-reader: feat: parse infix exprs for +,-,*,/ operators 2024-08-14 23:44:17 -04:00
ae746b3173 xo-reader: retire unused admits_symbol() 2024-08-11 00:01:11 -05:00
e9e0d5255f xo-reader: streamline: drop redundant admits_xxx() methods 2024-08-10 23:57:01 -05:00
18a4b51d3c xo-reader: simplify: drop redundant virtual admits_xxx() 2024-08-10 17:30:45 -05:00
2b436850cf xo-reader: simplify: drop exprstate.admits_colon() 2024-08-10 17:12:52 -05:00
fb30451684 xo-reader: simplify rightparen logic 2024-08-09 20:45:06 -04:00
538c9d90e5 xo-reader: simplify paren handling logic 2024-08-09 20:40:37 -04:00
424a4cd0f1 xo-reader: simplify: adopt exprseq_xs + drop .admits_definition() 2024-08-09 19:43:00 -04:00
74099cacab xo-reader: uncopy: with + exprstate.illegal_input_error() 2024-08-09 13:57:42 -04:00
60a7ec1cd0 xo-reader: rename+: exprstate.on_def() -> on_def_token() + token arg 2024-08-09 13:42:50 -04:00
892b332a20 xo-reader: rename: exprstate.on_f64() -> on_f64_token() 2024-08-09 13:36:33 -04:00
a51f1d65db xo-reader: rename+: exprstate.on_rightparen() + token arg 2024-08-09 13:30:41 -04:00
8d1ae35075 xo-reader: rename+: exprstate.on_leftparen() -> on_leftparen_token() 2024-08-09 13:25:59 -04:00
2cff2b5ca7 xo-reader: rename+: exprstate.on_singleassign() + explicit token 2024-08-09 13:21:18 -04:00