[plt-scheme] migrating non-modular mzscheme programs to PLT version 4

From: H David Goering (hdg at cox.net)
Date: Tue Nov 18 23:41:55 EST 2008


Which Scheme is scheme/load?  It's not MzScheme.  The program loaded  
after adding "(require mzscheme)" and making a few small changes, but  
it doesn't run.



On Nov 16, 2008, at 11:14 AM, Carl Eastlund wrote:

> If you put "#lang scheme/load" at the top of your main file, I believe
> it should run properly in the Module language and load the other files
> without changing them.
> --Carl
> On Sun, Nov 16, 2008 at 12:36 AM, H David Goering <hdg at cox.net> wrote:
>> Unlike MzScheme of version 3, Module seems to require that the top- 
>> level
>> file of a multi=file program contain a module. Adding '(require  
>> mzscheme)'
>> is not sufficient.
>> Converting the top-level file to a module is no hardship, but  
>> 'load' and
>> 'load/use-compiled' now seem to require that arguments refer to  
>> modules
>> rather than mere files. If the reference is not a module the error  
>> message
>> "compile: bad syntax; function application is not allowed, because  
>> no #%app
>> syntax transformer is bound" is seen. Adding '#lang mzscheme'  
>> fixes that
>> problem but fragments the namespace in a regrettable way.
>> Will Module accept a multi-file mzscheme program that is not  
>> modularized?
>>  Or one that is treated as a single module?
>> Thanks,
>> David

Posted on the users mailing list.