From 9373be4b3d69755cfd8e4f6b1f3c3929942b4ff1 Mon Sep 17 00:00:00 2001 From: Eli Barzilay Date: Thu, 25 Sep 2008 19:21:01 +0000 Subject: [PATCH] some macro cleanup svn: r11874 --- collects/handin-server/checker.ss | 33 +++++++++++++------------------ 1 file changed, 14 insertions(+), 19 deletions(-) diff --git a/collects/handin-server/checker.ss b/collects/handin-server/checker.ss index e4777f1573..1cb058981d 100644 --- a/collects/handin-server/checker.ss +++ b/collects/handin-server/checker.ss @@ -653,15 +653,13 @@ (and (procedure? proc) (procedure-arity-includes? proc arity))) (provide !defined) -(define-syntax !defined - (syntax-rules () - ;; expected to be used only with identifiers - [(_ id ...) (begin (with-handlers - ([exn:fail:contract:variable? - (lambda (_) - (error* "missing binding: ~a" (->disp 'id)))]) - ((submission-eval) `id)) - ...)])) +(define-syntax-rule (!defined id ...) + ;; expected to be used only with identifiers + (begin (with-handlers ([exn:fail:contract:variable? + (lambda (_) + (error* "missing binding: ~a" (->disp 'id)))]) + ((submission-eval) `id)) + ...)) (provide !procedure* !procedure) (define-syntax !procedure* @@ -679,18 +677,15 @@ (->disp 'expr) ar)))])) (define-syntax !procedure (syntax-rules () - [(_ expr) (begin (!defined expr) (!procedure* expr))] - [(_ expr arity) (begin (!defined expr) (!procedure* expr arity))])) + [(_ id) (begin (!defined id) (!procedure* id))] + [(_ id arity) (begin (!defined id) (!procedure* id arity))])) (provide !integer* !integer) -(define-syntax !integer* - (syntax-rules () - [(_ expr) - (unless (integer? ((submission-eval) `expr)) - (error* "~a is expected to be bound to an integer" (->disp 'expr)))])) -(define-syntax !integer - (syntax-rules () - [(_ expr) (begin (!defined expr) (!integer* expr))])) +(define-syntax-rule (!integer* expr) + (unless (integer? ((submission-eval) `expr)) + (error* "~a is expected to be bound to an integer" (->disp 'expr)))) +(define-syntax (!integer id) + (begin (!defined id) (!integer* id))) (provide !eval) (define-syntax-rule (!eval expr) ((submission-eval) `expr))