[plt-scheme] Re: Typed-Scheme, cond, match and wierd behaviour with non-disjoint types

From: Paulo J. Matos (pocmatos at gmail.com)
Date: Tue Apr 7 16:06:48 EDT 2009

While replying to Anthony message I noticed that the version he had
worked and mine would also work if I changed my match syntax:
(: test2 (case-lambda
         [Integer -> Integer]
         [Char -> String]
         [mytype1 -> mytype2]))
(define (test2 x)
 (match x
   ((? integer? x)
   ((? char? x)
    (make-string 1 x))))

This now works, but the error persists in my case... and I know why. I
should repost soon with a more specific example.


Paulo Jorge Matos - pocmatos at gmail.com
Webpage: http://www.personal.soton.ac.uk/pocm

Posted on the users mailing list.