[racket] Using prefix-out with contract-out together

From: Lawrence Woodman (lwoodman at vlifesystems.com)
Date: Sun Aug 4 03:46:30 EDT 2013

On 03/08/13 08:00, Carl Eastlund wrote:
> That sounds like a bug in contract-out and/or prefix-out.  There's no 
> reason they shouldn't work right together.  And I can confirm the bug 
> -- the bindings get exported with contracts, but by their original 
> names.  I assume that's the behavior you're seeing as well.

Yes, that's the behaviour I'm seeing.

I was just about to issue a bug report before finishing this email, when 
I noticed that you have done so.
I was delayed a little as I was trying to work out the directory 
structure of the racket repo, so that I could
find the tests for prefix-out and contract-out.


bfn


Lorry

>
> Carl Eastlund
>
> On Sat, Aug 3, 2013 at 2:51 AM, Lawrence Woodman 
> <lwoodman at vlifesystems.com <mailto:lwoodman at vlifesystems.com>> wrote:
>
>     Hello,
>
>     I would like to prefix the functions that I want to export from a
>     module and
>     provide a contract for each exported function.  I tried the
>     following style:
>
>       (provide
>        (prefix-out mymodule-
>                    (contract-out
>                     [func-a (-> string? any)]
>                     [func-b (-> string? any)])))
>
>     I realise that the code above doesn't work because contract-out is
>     trying to bind
>     the contracts to the un-prefixed names.  Is there is cleaner way
>     of doing this,
>     rather than just renaming the functions at definition time and
>     using the full name
>     for the contracts?
>
>     Thanks
>
>
>     Lorry
>
>     -- 
>     vLife Systems Ltd
>     Registered Office: The Meridian, 4 Copthall House, Station Square,
>     Coventry, CV1 2FL
>     Registered in England and Wales No. 06477649
>     http://vlifesystems.com
>
>     ____________________
>      Racket Users list:
>     http://lists.racket-lang.org/users
>
>


-- 
vLife Systems Ltd
Registered Office: The Meridian, 4 Copthall House, Station Square, Coventry, CV1 2FL
Registered in England and Wales No. 06477649
http://vlifesystems.com

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.racket-lang.org/users/archive/attachments/20130804/f00c756c/attachment.html>

Posted on the users mailing list.