From e4bf99c27751b391eae9e0ccfe6294e74f719c41 Mon Sep 17 00:00:00 2001 From: "William J. Bowman" Date: Tue, 22 Sep 2015 22:59:07 -0400 Subject: [PATCH] Syntax parse for better error messages --- curnel/redex-lang.rkt | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/curnel/redex-lang.rkt b/curnel/redex-lang.rkt index 1f03626..c4fc500 100644 --- a/curnel/redex-lang.rkt +++ b/curnel/redex-lang.rkt @@ -423,12 +423,11 @@ (syntax-case syn () [(_ . id) (normalize/syn #'id)])) -;; TODO: Syntax-parse (define-syntax (dep-define syn) - (syntax-case syn (:) - [(_ (name (x : t)) e) + (syntax-parse syn + [(_ (name:id (x:id : t)) e) #'(dep-define name (dep-lambda (x : t) e))] - [(_ id e) + [(_ id:id e) (let ([e (cur->datum #'e)] [id (syntax->datum #'id)]) (extend-Γ/term! gamma id (type-infer/term e))