From 27f471e04eda92e5801ba4f5ef6affb48e4845f0 Mon Sep 17 00:00:00 2001 From: Jay McCarthy Date: Tue, 24 Nov 2015 20:15:57 -0500 Subject: [PATCH] misc def stuff --- remix/stx0.rkt | 2 -- remix/tests/simple.rkt | 11 ++++++++++- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/remix/stx0.rkt b/remix/stx0.rkt index 18ece88..9855f0d 100644 --- a/remix/stx0.rkt +++ b/remix/stx0.rkt @@ -210,7 +210,6 @@ (pattern x:id #:attr λ-arg (syntax x) #:attr λ-bind '()) - ;; xxx write a test for this (pattern (~and def-lhs:expr (#%brackets dt . _)) #:declare dt (static def-transformer? "def transformer") #:with x (generate-temporary #'def-lhs) @@ -269,7 +268,6 @@ [(_#%dot _λ body:expr) (syntax/loc stx (remix-cut body))] - ;; xxx test this [(_#%dot _λ bodies:expr ...) (syntax/loc stx (remix-cut (#%dot bodies ...)))]))]) diff --git a/remix/tests/simple.rkt b/remix/tests/simple.rkt index 7fc9519..d23586e 100644 --- a/remix/tests/simple.rkt +++ b/remix/tests/simple.rkt @@ -251,4 +251,13 @@ (def [example^ ee] 1) (module+ test {(ee.f 2) ≡ 1} - {(ee.g 2) ≡ 2}) + {(ee.g 2) ≡ 2} + ;; Notice that cut works with nested dots + {(λ.example2^.h 'ignored) ≡ 19}) + +;; This is especially useful inside of functions +(def (f-using-example [example^ ee]) + (ee.f 2)) +(module+ test + {(f-using-example 1) ≡ 1}) +