[plt-dev] I am not using .rkt files yet...

From: Matthew Flatt (mflatt at cs.utah.edu)
Date: Mon Apr 12 17:04:48 EDT 2010

At Mon, 12 Apr 2010 14:51:12 -0500, Robby Findler wrote:
> IIUC, .rkt is the default extension for module paths like (require
> planet/..../drscheme/dracula-state), ie those that do not have quotes.

Even if you have quotes, a ".ss" in a moule path is normalized to

The essence of your answer is right on, though: the contract system is
printing the name of the enclosing module, not its implementation
source. Of course, the original intent was for those to be the same.

> Then there is some magic munging that goes on whereby a .ss file in
> the place where a .rkt file is expected happens. 

It's in the compiled-load handler, which uses a ".ss" file if a ".rkt"
is to be loaded and no such file exists.

> I recall that
> Matthew, Matthias, Eli and I had a long discussion on the best way to
> accommodate such paths and this seems to be the best option.

Most of the discussion is here:


Where that initial message says "module-name' resolver, the
implementation turned out to be "compiled-load handler", instead.

I have an idea for how to make the printed form of a module name be the
implementation path, instead of the normalized module name, but I
haven't tried it, yet, and it got pushed a couple of levels down on my
work stack.

Posted on the dev mailing list.