diff --git a/11-tidbit-3-tidbit-3-tidbit-3/main.rkt b/11-tidbit-3-tidbit-3-tidbit-3/main.rkt index 678e84c..ea4db4c 100644 --- a/11-tidbit-3-tidbit-3-tidbit-3/main.rkt +++ b/11-tidbit-3-tidbit-3-tidbit-3/main.rkt @@ -81,7 +81,7 @@ The grammar: [else (With (first names) (first vals) (binds* (rest names) (rest vals) body))])) (: Z : -> TIDBIT) -; Z combinator! +; Z combinator. (define (Z) (Fun (list 'f) (Call @@ -140,10 +140,14 @@ The grammar: [(list 'with (list (symbol: name) named) body) (With name (parse-sexpr named) (parse-sexpr body))] [else (error 'parse-sexpr "bad `with' syntax in ~s" sexpr)])] + + ; Recur. [(cons 'recur more) (match sexpr [(list 'recur (list (symbol: name) named) body) - (Recur name (parse-sexpr named) (parse-sexpr body))] + (println named) + (println body) + (Recur name (parse-sexpr named) (parse-sexpr body))] [else (error 'parse-sexpr "bad `recur' syntax in ~s" sexpr)])] ; Function declaration.