[plt-scheme] srfi/1 messes typed-scheme

From: Robby Findler (robby at eecs.northwestern.edu)
Date: Thu Apr 2 13:17:52 EDT 2009

I mean pick up the types from the contracts without having to say it again.

On Thu, Apr 2, 2009 at 12:17 PM, Carl Eastlund <carl.eastlund at gmail.com> wrote:
> That's pretty much what require/typed is.  You can use require for
> already-typed bindings, or require/typed for untyped bindings; it
> gives Typed Scheme a type to work with and adds a contract to ensure
> the type.
>
> --Carl
>
> On Thu, Apr 2, 2009 at 1:13 PM, Robby Findler
> <robby at eecs.northwestern.edu> wrote:
>> Why not allow requires of modules that have contracts (perhaps in a
>> sublanguage of the contract language that correspond to TS types) too?
>>
>> Robby
>>
>> On Thu, Apr 2, 2009 at 12:11 PM, Matthias Felleisen
>> <matthias at ccs.neu.edu> wrote:
>>>
>>> The error message is clearly uninformative and unhelpful, which points out
>>> that in some sense a plain require shouldn't work at all in TS modules
>>> UNLESS they refer to a typed module. -- Matthias
>>>
>>>
>>>
>>>
>>> On Apr 2, 2009, at 12:31 PM, Sam TH wrote:
>>>
>>>> SRFI 1 provides `map', which overrides the `map' provided from
>>>> `typed-scheme'.  That `map' doesn't have a type associated with it,
>>>> and you didn't specify one with `require/typed', so you get the error
>>>> you see.
>>>>
>>>> If you want to use a procedure from SRFI 1, or any other untyped
>>>> library, you need to use `require/typed'.
>>>>
>>>> sam th
>


Posted on the users mailing list.