Is this what you are after?

https://github.com/racket/racket/blob/master/racket/collects/racket/private/submodule.rkt

/Applications/Racket v6.11/collects/racket/private/submodule.rkt


Stephen


On Sun, Dec 17, 2017 at 10:36 AM, Laurent <laurent.ors...@gmail.com> wrote:

> Also, I can't find where module+ is defined. Anyone has a pointer?
>
> On Sun, Dec 17, 2017 at 9:34 AM, Laurent <laurent.ors...@gmail.com> wrote:
>
>> Excellent, thanks a lot!
>>
>> On Sat, Dec 16, 2017 at 8:44 PM, Matthew Flatt <mfl...@cs.utah.edu>
>> wrote:
>>
>>> [...]
>>>
>>      (set! submodule-content
>>>            (cons (syntax-local-introduce
>>>                   #`(begin
>>>                       (provide proc)
>>>                       (define proc (list (cons 'prop prop-val) ...))))
>>>
>>
>> 1) I put all these macros in a separate module, to keep only the calls to
>> `my-define` in "my-file.rkt". But then Racket was complaining about "no
>> #%datum syntax transformer is bound" on "some value", that is, on
>> `prop-val`. Some digging on the list told me that I could simply quote
>> prop-val since this is supposed to be only data. And that works great.
>>
>> But for the sake of understanding, suppose that I have a racket/base
>> expression like `(+ 3 4)` instead of "some value", then IIUC I need to give
>> it some syntax location so that it can be interpreted correctly. Here, this
>> location seems to be (inside?) the newly created submodule, but how do I
>> refer to this place with `syntax/loc`?
>>
>>
>> 2) Instead of `racket/base` for the submodule, I was thinking of using
>> the `info` language, as it seems to be lighter and is made for data
>> (although it does not seem to 'export' bindings). If I have to load many
>> submodules of files like my-file.rkt, would there be a practical difference
>> in terms of speed or memory, or can I just stick to racket/base (in the
>> relatively unlikely case the user wants to use expressions in the
>> `prop-val`s)?
>>
>>
>> Thanks!
>>
>
> --
> You received this message because you are subscribed to the Google Groups
> "Racket Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to racket-users+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to