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

Attachment: smime.p7s
Description: S/MIME cryptographic signature

_________________________________________________
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev

Reply via email to