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

From: Robby Findler (robby at eecs.northwestern.edu)
Date: Wed Feb 18 08:15:10 EST 2009

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


Posted on the users mailing list.