[plt-scheme] DrScheme vs. multiple collections directories
It seems that DrScheme does not like having multiple distinct
collections directories. I setup a test collection directories like
this:
==============================================================================
$ ls -RF ~/plt-collects
essai/
/home/elrond/plt-collects/essai:
essai.scm info.ss
==============================================================================
The two collection members are simple test modules:
==============================================================================
$ cat ~/plt-collects/essai/essai.scm
;; essai.scm
(module essai mzscheme
(provide (*essai-defined*))
(define *essai-defined* #t))
;; EOF
$ cat ~/plt-collects/essai/info.ss
;; -*- scheme -*-
;; info.ss
(module info (lib "infotab.ss" "setup")
(define name "essai-collect"))
;; EOF
==============================================================================
This new battlefield was then added to the PLTCOLLECTS environment
variable and tested with mzscheme and MrEd (MrEd transcript omited),
this proved to be a correct setup:
==============================================================================
$ echo $PLTCOLLECTS
/usr/local/packages/plt/collects:/home/elrond/plt-collects
$ mzscheme
Welcome to MzScheme version 203.1, Copyright (c) 1995-2003 PLT
> (require (lib "essai.scm" "essai"))
> *essai-defined*
#t
==============================================================================
I then fired DrScheme and it exploded in my hands, complaining about
the syntax of the info.ss file through two successive alerts and two
messages on stderr, halting after that:
==============================================================================
$ drscheme3m
/home/elrond/plt-collects/essai/info.ss:4:40: infotab-module: not a well-formed definition at: in: (#%module-begin (define name "essai-collect"))
/home/elrond/plt-collects/essai/info.ss:4:40: infotab-module: not a well-formed definition at: in: (#%module-begin (define name "essai-collect"))
$
==============================================================================
I also tried to add the new collection directory by alterting the
current-library-collection-paths parameter in .mredrc[1] with the same
effect. So it seems there is a bug somewhere in 203.1-cvs17jan2003.
[1] The DrScheme and many other scripts exec mred with the -q options.
Why? The rc file is a handy place to compulationaly set the collection
paths for both mzscheme and mred. That was my first move when setting
a new collection directory and was disapointed that I had to use
environment variables or alter the drscheme{3m} wraper scripts. I also
was disapointed that no system-wide initialization file was evaluated
at interpreter startup.
--
%!PS
297.6 420.9 translate 90 rotate 0 setgray gsave 0 1 1{pop 0 180 moveto 100
180 170 100 170 -10 curveto 180 -9 180 -9 190 -10 curveto 190 100 100 180
0 180 curveto fill 180 rotate}for grestore/Bookman-LightItalic findfont
240 scalefont setfont -151.536392 -63.7998886 moveto (bp)show showpage