<div>All of the examples in the ts-guide type check and run correctly for me except the Typed Scheme version of example 3.2 (the last code example on the page).</div><div><br></div><div>This happens with DrScheme 4.2.2 and the svn snapshot of 4.2.3.2 captured below. To this first time user the error message is not immediately more useful than some of those haskell can dispense.</div>
<div><br></div><div>Any help with &lt;1&gt; what the error is trying to say? , &lt;2&gt; should the example work?</div><div><br></div><div>--------------------------------------------------------------------------------------</div>
<div><br></div><div>Contents of definition window copied from <a href="http://docs.plt-scheme.org/ts-guide/index.html">http://docs.plt-scheme.org/ts-guide/index.html</a> example 3.2</div><div>(Same error with re-keyed example)</div>
<div><br></div><div>#lang typed-scheme</div><div>  (: map</div><div>     (All (C A B ...)</div><div>          ((A B ... B -&gt; C) (Listof A) (Listof B) ... B</div><div>           -&gt;</div><div>           (Listof C))))</div>
<div>  (define (map f as . bss)</div><div>    (if (or (null? as)</div><div>            (ormap null? bss))</div><div>        null</div><div>        (cons (apply f (car as) (map car bss))</div><div>              (apply map f (cdr as) (map cdr bss)))))</div>
<div><br></div><div>----------------------------------------------------------------------------------------------</div><div>Contents of interaction window after &lt;running&gt; the above definition:</div><div><br></div><div>
<div>Welcome to DrScheme, version 4.2.3.2-svn26nov2009 [3m].</div><div>Language: Module; memory limit: 128 megabytes.</div><div>. typecheck: Polymorphic function map could not be applied to arguments:</div><div>Domain: (A B ... B -&gt; C) (Listof A) (Listof B) ... B</div>
<div>Arguments: (All (a b) (case-lambda ((Pair a b) -&gt; a) ((Listof a) -&gt; a))) (Listof (Listof Any))</div><div> in: (#%app map car bss)</div><div>. typecheck: Bad arguments to function in apply:</div><div>Domain: A B ... B</div>
<div>Arguments: A (U) *</div><div> in: (#%app apply f (#%app car as) (#%app map car bss))</div><div>. typecheck: Polymorphic function map could not be applied to arguments:</div><div>Domain: (A B ... B -&gt; C) (Listof A) (Listof B) ... B</div>
<div>Arguments: (All (a b) (case-lambda ((Pair a b) -&gt; b) ((Listof a) -&gt; (Listof a)))) (Listof (Listof Any))</div><div> in: (#%app map cdr bss)</div><div>. typecheck: Bad arguments to polymorphic function in apply:</div>
<div>Domain: (A B ... B -&gt; C) (Listof A) (Listof B) ... B</div><div>Arguments: (A B ... B -&gt; C) (Listof A) (U) *</div><div> in: (#%app apply map f (#%app cdr as) (#%app map cdr bss))</div><div>. typecheck: Summary: 4 errors encountered in:</div>
<div>  (#%app map car bss)</div><div>  (#%app apply f (#%app car as) (#%app map car bss))</div><div>  (#%app map cdr bss)</div><div>  (#%app apply map f (#%app cdr as) (#%app map cdr bss))</div><div>&gt; </div><div><br></div>
<div>Thanks,</div><div>Mark</div></div>