[racket] syntax-parse and literals

From: Matthias Felleisen (matthias at ccs.neu.edu)
Date: Wed Sep 7 16:18:56 EDT 2011

I wonder whether this re-exporting problem isnt a problem of the 'signatures' in our module system. 

In the unit world, we can organize signatures in such a way that pieces are available for separate re-export elsewhere. We lack this in the module world. What I could imagine is 

 (provide (all-from-out cond-specs racket/base))

where cond-specs would specify cond and the else and => that come with it. It would require some more work on the provider's part but I think it would be well worth it. 

-- Matthias



On Sep 7, 2011, at 3:01 PM, Jay McCarthy wrote:

> I think that's true. Eli has an idea about how to use "sub-binding"
> information to deal with this better. I also think "modulets" might be
> an answer too. It's definitely something that needs to be improved in
> this case and in quite a few others. (For example, the documentation
> does a poor job letting you know what pre-defined struct properties
> there are.)
> 
> Jay
> 
> On Wed, Sep 7, 2011 at 12:57 PM, Shriram Krishnamurthi <sk at cs.brown.edu> wrote:
>> Thanks for the very informative thread.
>> 
>> Piecing together what Asumu, Jay, Robby, and Eli said, I think I
>> understand what's going on, and I think this actually answers a
>> question I asked last year and didn't get an answer to: Why do require
>> and provide export their sub-forms as macros rather than just make
>> them local keywords.
>> 
>> What I understand now is that by exporting the sub-forms as macros,
>> one can ensure that the binding structure is just right.  I think this
>> is what Jay means when he says "I consider insisting on bindings a
>> feature, because it promotes well-behaved macros".
>> 
>> The downside is that a single "feature" now has a whole bunch of
>> exports, and anyone who wants to re-export the feature has to know
>> about and re-export all the other bound names as well.  For instance,
>> I can't just re-export "require" -- I have to track all the require
>> sub-forms and re-export those as well.
>> 
>> Shriram
>> 
> 
> 
> 
> -- 
> Jay McCarthy <jay at cs.byu.edu>
> Assistant Professor / Brigham Young University
> http://faculty.cs.byu.edu/~jay
> 
> "The glory of God is Intelligence" - D&C 93
> 
> _________________________________________________
>  For list-related administrative tasks:
>  http://lists.racket-lang.org/listinfo/users




Posted on the users mailing list.