diff --git a/libcompiler/reader.scm b/libcompiler/reader.scm index 7b572a7..dbcad05 100644 --- a/libcompiler/reader.scm +++ b/libcompiler/reader.scm @@ -5,17 +5,17 @@ (provide read-module) (define (read-module [port (current-input-port)]) - `(lambda argv + `(lambda *argv* ,@(let iter ([forms (read-forms port)] [bindings '()]) (cond [(null? forms) (if (null? bindings) '() `(letrec ,bindings))] - [(simple-declare-form? (first forms)) + [(simple-define-form? (first forms)) (iter (cdr forms) (cons (cdr (first forms)) bindings))] - [(lambda-declare-form? (first forms)) + [(lambda-define-form? (first forms)) (iter (cdr forms) (cons `(,(first (second (first forms))) (lambda ,(cdr (second (first forms))) ,@(cddr (first forms)))) @@ -34,15 +34,15 @@ forms (iter (read port) (cons form forms)))))) -(define (simple-declare-form? form) +(define (simple-define-form? form) (and (pair? form) - (eq? (first form) 'declare) + (eq? (first form) 'define) (symbol? (second form)) (null? (cdddr form)))) -(define (lambda-declare-form? form) +(define (lambda-define-form? form) (and (pair? form) - (eq? (first form) 'declare) + (eq? (first form) 'define) (pair? (second form)) (symbol? (first (second form)))))