[plt-dev] Fwd: [plt-scheme] How to add a new language to DrScheme?

From: Matthias Felleisen (matthias at ccs.neu.edu)
Date: Wed Feb 18 09:34:28 EST 2009

Sounds like something we need a chapter on this stuff. Carl? Ryan? --  

Begin forwarded message:

> From: Robby Findler <robby at eecs.northwestern.edu>
> Date: February 18, 2009 8:15:10 AM EST
> To: Filipe Cabecinhas <filcab at gmail.com>
> Cc: plt-scheme at list.cs.brown.edu
> Subject: Re: [plt-scheme] How to add a new language to DrScheme?
> On Wed, Feb 18, 2009 at 6:57 AM, Filipe Cabecinhas  
> <filcab at gmail.com> wrote:
>> Hi
>> I'm trying to add a new language to DrScheme. I've already  
>> implemented
>> main.ss, lang/reader.ss and info.ss. (so require, #lang and  
>> DrScheme all
>> work). But I don't have my module directory inside collects, so  
>> DrScheme
>> won't see it (module... see it because I added it to that language's
>> collects). How can I add this directory to DrScheme? Must I change an
>> environment variable or can I do it by changing one or two files or
>> configuring DrScheme for that?
> The way we used to do that was to distribute a .plt file. Nowadays, we
> recommend using planet for that, but you'd have to issue a command to
> download it after drscheme is installed.
>> Also, I want to distribute DrScheme with this language to some  
>> students
>> for testing. Is there a way to create a minimized installer with only
>> scheme, DrScheme, debug tools and my language? Mind that my language
>> needs to use MysterX, so I need to run the scripts to register the  
>> dlls.
>> And they're architecture students, so I can't just tell them to run
>> regsrv32 mysterx.dll :-)
> If you go the planet route, then telling them to (require (planet
> ...)) would also trigger running whatever code you'd want, and I
> expect that code can go register the dlls? Unless DrScheme can't be
> running at the time you do that, in which case you'd have to tell them
> to run the command 'planet install ...', but is that beyond them?
> If you go the .plt route, the same thing applies; you can create a
> .plt that runs some code when it is installed to set up the
> environment.
> Robby
> _________________________________________________
>   For list-related administrative tasks:
>   http://list.cs.brown.edu/mailman/listinfo/plt-scheme

Posted on the dev mailing list.