Have you tried using inst instead of ann? Telling TR what to fill
in for a and b will probably be more helpful to it.
Carl Eastlund
On Sat, Aug 20, 2011 at 11:55 AM, John Clements
cleme...@brinckerhoff.org wrote:
I can't seem to make typed racket happy about using 'sort':
#lang typed/racket
((ann sort ((Listof Integer) (Integer Integer - Boolean) - (Listof
Integer)))
'(3 5 4) (ann (Integer Integer - Boolean)))
=
Type Checker: Expected ((Listof Integer) (Integer Integer - Boolean) -
(Listof Integer)), but got (All (a b) (case-lambda ((Listof a) (a a -
Boolean) [#:cache-keys? Boolean] - (Listof a))((Listof a) (b b - Boolean)
[#:cache-keys? Boolean] #:key (a - b) - (Listof a in: sort
As far as I can tell, the type I specify is an instantiation of the given
type for sort; my best guess is that the problem is that the type 'b' doesn't
appear unless I use the #:key argument. My attempts to specify a #:key
explicitly went even more horribly wrong.
John
_
For list-related administrative tasks:
http://lists.racket-lang.org/listinfo/dev
_
For list-related administrative tasks:
http://lists.racket-lang.org/listinfo/dev