Added desugar steps to add (begin) wrappers around long lambda bodies, and rewrite internal (define) forms into letrec forms

This commit is contained in:
2025-12-26 22:13:30 +03:00
parent d84d81e824
commit be85a9a6ed
2 changed files with 33 additions and 8 deletions

View File

@@ -21,7 +21,7 @@ and dbg_print_start = function
let def = Parser.parse_str "(define (f x) (+ x 1))
(define (f)
(define (g y) (* y 2))
(g 5))";;
(g 5) (g 6))";;
let desugared = List.map Compiler.Sugar.desugar def
let () = List.iter (fun x -> Printf.printf "%s\n" (dbg_print_start x) ) desugared
let () = print_newline ()