[plt-scheme] symbols redefined in SRFIs

From: Robby Findler (robby at cs.uchicago.edu)
Date: Mon Oct 23 18:32:05 EDT 2006

At Tue, 24 Oct 2006 01:26:21 +0300, "Dan Muresan" wrote:
> > If I were to write a program that used mzscheme's reverse! and worked
> > fine, and then I were to add a require in to load in some procedure
> > (that, presumably wasn't reverse!) from srfi-1, my old program should
> > would (silently) behave differently? That doesn't seem wise.
> 
> You are bringing up that old "raising-conflicts-saves-lives" argument
> I've seen on the mailing list, but it doesn't apply here...
> 
> First of all, I was proposing that mzscheme never export anything but
> the SRFI-1 versions -- or, alternatively, that the SRFI-1
> implementation simply re-export the mzscheme versions, where
> applicable (such as for reverse!).
> 
> Now, how is mzscheme reverse! different from SRFI-1 reverse! ? I see
> no inherent reasons for two different versions. Do you? SRFI-1 doesn't
> mandate the usage of its reference implementation, in case you want to
> mention "native vs. Scheme".

I'm not sure of the rationale as to why srfi-1's reverse! is different
than mz's, but presumably it is (or else there wouldn't be a conflict,
srfi-1 could just re-export mz's).

As to why mz doesn't change to conform to srfi-1, it may well change in
the future. I'm sure you can expect changes when r6 is finalized and
maybe Matthew will even make this particular change before then.

Until then, I think it is a safe bet we're going to continue to try to
save lives ;)

(oh, the h u m a n i t y ! ;)

Robby



Posted on the users mailing list.