[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [plt-scheme] upgrading to 200 from 103



  . . .
> The problem is that `(require (lib "load.ss" "slibinit"))' redefines
> `require' to be the one defined by SLIB.
  . . .
> That's ugly, but any solution is probably going to be ugly, since the
> underlying problem is that SLIB doesn't use MzScheme's `module'.

I've been wrestling with this problem, and I'm curious as to the PLT
community view on the trade-offs involved.  On the one hand, having
powerful
features built into DrScheme clearly makes it a more attractive choice;
on the other hand, these same features make it less likely that
libraries
developed within and provided to the Scheme community at large will be
usable in DrScheme without some resource expenditure for retrofitting.

This problem occurs with SLIB and STk as well, but a fix is available:
STk uses (require <string>) while SLIB uses (require <symbol>), so the
STk.init redefines require to dispatch on the arg type -- problem
solved!
The Help Desk doc'n on modules is unclear on this point, but it looks
like
require can take either a symbol or a list structure arg, so the same
trick won't work.

I don't know any good answers ...

 -- Bill Wood