Some checks failed
Test, Build, and Deploy / test-build-deploy (push) Failing after 54s
Recursive-descent calculator parses '(1 + 2) * 3 + 4' = 13. Two parser bugs fixed: 1. parse-let now handles inline 'let rec a () = ... and b () = ... in body' via new (:let-rec-mut BINDINGS BODY) and (:let-mut BINDINGS BODY) AST shapes; eval handles both. 2. has-matching-in? lookahead no longer stops at 'and' — 'and' is internal to let-rec, not a decl boundary. Without this fix, the inner 'let rec a () = ... and b () = ...' inside a let-decl rhs would have been treated as the start of a new top-level decl. Baseline exercises mutually-recursive functions, while-loops, ref-cell imperative parsing, and ADT-based AST construction.
14 lines
255 B
JSON
14 lines
255 B
JSON
{
|
|
"calc.ml": 13,
|
|
"closures.ml": 315,
|
|
"exception_handle.ml": 4,
|
|
"expr_eval.ml": 16,
|
|
"factorial.ml": 3628800,
|
|
"list_ops.ml": 30,
|
|
"module_use.ml": 3,
|
|
"option_match.ml": 5,
|
|
"quicksort.ml": 44,
|
|
"sum_squares.ml": 385,
|
|
"word_count.ml": 3
|
|
}
|