[plt-scheme] teachpacks broken in 4.2

From: Stephen Bloch (sbloch at adelphi.edu)
Date: Mon Jun 8 14:56:29 EDT 2009

I'm testing my tiles.plt and sb-world teachpacks in 4.2, and getting  
a horrible error message: as soon as I "add teachpack" and click  
"Run", I see

require: namespace mismatch; reference (phase 0) to a module "/ 
Applications/PLT Scheme v4.2/collects/scheme/private/kw.ss" that is  
not available (phase level 0)

So I have a couple of questions:
1) What happened?
2) How do I fix the teachpack so it works with both 4.2 and 4.1.x?

This may be a side effect of the unnatural acts I've been committing  
with a consenting "require", using it as an installer.  I tell  
students to "(require (planet "install.ss" ("sbloch" "tiles.plt" 1  
14)))" and similarly for "sb-world", ONCE each.  This is supposed to  
download and store the contents of the PLT file in the local PLaneT  
cache including a file named "tiles.ss", then execute "install.ss",  
which writes a different file named "tiles.ss" into the installed- 
teachpacks directory, which in turn does a "(require (planet  
"tiles.ss" ...))" to bring in the one we just cached.  After that,  
they can just add or clear those individual teachpacks.  Sorta weird,  
but it was the easiest (for the user) way I could think of to add a  
teachpack to the list of available teachpacks and simultaneously add  
its documentation to the index.

BTW, the bug arises on both MacOS and Windows (with, of course, a  
different pathname in the error message).

Stephen Bloch
sbloch at adelphi.edu

Posted on the users mailing list.