Re: [racket-dev] using 'sort' in typed/racket?

2011-08-20 Thread Carl Eastlund
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


Re: [racket-dev] using 'sort' in typed/racket?

2011-08-20 Thread John Clements

On Aug 20, 2011, at 12:06 PM, Carl Eastlund wrote:

 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.

Yay! Many thanks. 

John



smime.p7s
Description: S/MIME cryptographic signature
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev