Probably the wiser option. I'll see if I can adapt that solution.

On Aug 15, 2015, at 4:31 PM, Alexander D. Knauth <[email protected]> wrote:

> What kind of funny stuff?
> By the way, this sounds sort of like this
> http://www.mail-archive.com/[email protected]/msg28020.html
> Solution: 
> http://www.mail-archive.com/[email protected]/msg28031.html
> 
> Although it could be a completely different problem, I don't know.
> 
> On Aug 15, 2015, at 6:22 PM, Matthew Butterick <[email protected]> wrote:
> 
>> I have a #lang that does some funny stuff with #%module-begin (maybe too 
>> funny), the result being that when I run it in DrRacket, the `provide`d 
>> identifiers aren't visible at the top level:
>> 
>> (module my-lang-module my-lang
>> ...
>> (define id 42)
>> (provide id))
>> 
>>> id
>> id : undefined;
>> cannot reference undefined identifier
>> 
>> 
>> I've found a simple cure (maybe too simple) whereby I wrap my-lang-module 
>> with the usual racket/base module, which satisfies DrRacket:
>> 
>> 
>> (module repl-wrapper racket/base
>> (module my-lang-module my-lang
>>   ...
>>   (define id 42)
>>   (provide id))
>> (require 'my-lang-module)
>> (provide (all-from-out 'my-lang-module))
>> 
>>> id
>> 42
>> 
>> 
>> Question: is there an approved way to make this #lang-wrapping happen for 
>> the REPL, and only for the REPL? AFAICT `#%top-interaction` is not the cure, 
>> because it wraps the commands coming off the REPL (as opposed to the code in 
>> the definitions window). 
>> 
>> -- 
>> 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 [email protected].
>> 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 [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to