[racket] TR error message

From: Matthias Felleisen (matthias at ccs.neu.edu)
Date: Wed Sep 22 08:17:37 EDT 2010

On Sep 22, 2010, at 8:08 AM, Sam Tobin-Hochstadt wrote:

> Here I want to reiterate something that Vincent said, which is that
> all of these clauses are just part of the type system, not the
> optimizer.  They enable the type system to know more things about the
> arguments, and when the type system knows more, the optimizer can do
> better.  But this is just the type system, and as Vincent's example
> showed up-thread, you can write a program that depends for
> type-correctness on any one of these clauses.

While this is true on the surface, it is also true that 
one could get away with a significantly simpler type for < 
if one wouldn't to exploit this information somewhere. 
Since the only place where we really exploit it for now
is the optimizer, I think it is fair that to implicitly 
equate the two. 

Of course, that does not mean the error message should 
mention this application. One day we may have another one. 

Posted on the users mailing list.