From a781b50533f1b75d39671ab5c1804e60d3e1b521 Mon Sep 17 00:00:00 2001 From: Vincent St-Amour Date: Thu, 13 May 2010 11:07:09 -0400 Subject: [PATCH] Extended typed Scheme's optimizer to traverse more forms. original commit: b543177868f97a7cfe0bdf57f555da4d580ef726 --- collects/typed-scheme/private/optimize.rkt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/collects/typed-scheme/private/optimize.rkt b/collects/typed-scheme/private/optimize.rkt index 02afeae6..86c33e1c 100644 --- a/collects/typed-scheme/private/optimize.rkt +++ b/collects/typed-scheme/private/optimize.rkt @@ -56,6 +56,8 @@ #:with opt #'(op.unsafe p.opt)) (pattern (#%plain-app e ...) #:with opt #'(#%plain-app e.opt ...)) + (pattern (lambda (x ...) e ...) + #:with opt #'(lambda (x ...) e.opt ...)) (pattern other:expr #:with opt #'other)) @@ -63,4 +65,6 @@ (syntax-parse stx #:literal-sets (kernel-literals) [(define-values ~! ids e:opt-expr) (syntax/loc stx (define-values ids e.opt))] + [(#%app e:opt-expr ...) (syntax/loc stx (#%app e.opt ...))] + [(#%plain-app e:opt-expr ...) (syntax/loc stx (#%plain-app e.opt ...))] [_ stx]))