From 9d3554899741120dbbfbe6eb38810d74ee39de31 Mon Sep 17 00:00:00 2001 From: Mike Sperber Date: Thu, 9 Sep 2010 13:17:22 +0200 Subject: [PATCH] Unbreak `list-of'. --- .../signature/signature-syntax.rkt | 2 +- collects/tests/deinprogramm/signature.rkt | 28 +++++++++---------- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/collects/deinprogramm/signature/signature-syntax.rkt b/collects/deinprogramm/signature/signature-syntax.rkt index 723847121e..ba41aea157 100644 --- a/collects/deinprogramm/signature/signature-syntax.rkt +++ b/collects/deinprogramm/signature/signature-syntax.rkt @@ -20,7 +20,7 @@ (define-for-syntax (parse-signature name stx) (syntax-case* stx - (mixed one-of predicate list -> combined property reference at signature) + (mixed one-of predicate list -> combined property reference at signature list-of) module-or-top-identifier=? ((mixed ?signature ...) (with-syntax ((?stx (phase-lift stx)) diff --git a/collects/tests/deinprogramm/signature.rkt b/collects/tests/deinprogramm/signature.rkt index b9056c378d..2a7aca2601 100644 --- a/collects/tests/deinprogramm/signature.rkt +++ b/collects/tests/deinprogramm/signature.rkt @@ -198,10 +198,10 @@ (test-case "list" - (check-equal? (say-no (apply-signature (signature x (list %a)) 5)) 'no) - (check-equal? (say-no (apply-signature (signature x (list %a)) '(1 2 3))) '(1 2 3)) - (check-equal? (say-no (apply-signature (signature x (list (predicate integer?))) '(1 2 3))) '(1 2 3)) - (check-equal? (say-no (apply-signature (signature x (list (predicate integer?))) '(1 #f 3))) 'no)) + (check-equal? (say-no (apply-signature (signature x (list-of %a)) 5)) 'no) + (check-equal? (say-no (apply-signature (signature x (list-of %a)) '(1 2 3))) '(1 2 3)) + (check-equal? (say-no (apply-signature (signature x (list-of (predicate integer?))) '(1 2 3))) '(1 2 3)) + (check-equal? (say-no (apply-signature (signature x (list-of (predicate integer?))) '(1 #f 3))) 'no)) (test-case "mixed" @@ -321,28 +321,28 @@ (define empty-list (signature (predicate null?))) - (define list-of + (define my-list-of (lambda (x) (signature (mixed empty-list - (pare-of x (list-of x)))))) + (pare-of x (my-list-of x)))))) - (define/signature kons (signature (%a (list-of %a) -> (pare-of %a (list-of %a)))) + (define/signature kons (signature (%a (my-list-of %a) -> (pare-of %a (my-list-of %a)))) raw-kons) - (define/signature build-list (signature (integer -> (list-of counting-integer))) + (define/signature build-list (signature (integer -> (my-list-of counting-integer))) (lambda (n) (if (= n 0) '() (kons n (build-list (- n 1)))))) - (define/signature list-length (signature ((list-of counting-integer) -> integer)) + (define/signature list-length (signature ((my-list-of counting-integer) -> integer)) (lambda (lis) (cond ((null? lis) 0) ((pare? lis) (+ 1 (list-length (kdr lis))))))) - ;; one wrap each for (list-of %a), one for (list-of counting-integer) + ;; one wrap each for (my-list-of %a), one for (my-list-of counting-integer) (let ((l1 (build-list 10))) (check-equal? count 0) (let ((len1 (list-length l1))) @@ -362,15 +362,15 @@ (test-case "wrap equality" (define-record-procedures-parametric pare pare-of raw-kons pare? (kar kdr)) - + (define empty-list (signature (predicate null?))) - (define list-of + (define my-list-of (lambda (x) (signature (mixed empty-list - (pare-of x (list-of x)))))) + (pare-of x (my-list-of x)))))) - (define/signature kons (signature (%a (list-of %a) -> (pare-of %a (list-of %a)))) + (define/signature kons (signature (%a (my-list-of %a) -> (pare-of %a (my-list-of %a)))) raw-kons) (check-equal? (raw-kons 1 '()) (raw-kons 1 '()))