[plt-scheme] typed teaching languages

From: Todd O'Bryan (toddobryan at gmail.com)
Date: Sun Aug 9 20:00:23 EDT 2009

Thanks. I'll do it the way you suggested...

On Sun, Aug 9, 2009 at 6:39 PM, Carl Eastlund<carl.eastlund at gmail.com> wrote:
> Todd,
>
> I believe the ability to put predicate types in require/typed is
> unsound and soon to be unsupported.  Sam can probably say more on that
> subject if need be.  I recommend using number? to point Typed Scheme
> in the right direction (as in the email I sent a few seconds ago,
> which you likely had not received when you sent the below).
>
> Carl Eastlund
>
> On Sun, Aug 9, 2009 at 6:35 PM, Todd O'Bryan<toddobryan at gmail.com> wrote:
>> As so often happens, just after sending this message I realized that I
>> needed to convince Typed Scheme that real? is a predicate for Number,
>> so I added
>>
>> (require/typed scheme [real? (Any -> Boolean : Number)])
>>
>> at the top, and it now works.
>>
>> On Sun, Aug 9, 2009 at 6:28 PM, Todd O'Bryan<toddobryan at gmail.com> wrote:
>>> Thank you. I'm now making progress...
>>>
>>> However, I've hit a Typed Scheme hiccup.
>>>
>>> (define (positive-real? v)
>>>  (and (real? v) (>= v 0)))
>>>
>>> won't type check because it thinks the second v is just an Any.
>>>
>>> I tried adding a type annotation (ann v Number) with a begin around
>>> the second part of the and, but that didn't help.
>>>
>>> Anybody know how to give Typed Scheme the hint it needs here?
>>>
>>> Todd
>


Posted on the users mailing list.