[plt-scheme] DrScheme vs. multiple collections directories

From: Bertrand Petit (plt-s at phoe.frmug.org)
Date: Mon Feb 3 05:24:37 EST 2003

	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


Posted on the users mailing list.