[r6rs-discuss] library versions (was: Rationale issues)

From: William D Clinger <will>
Date: Thu, 28 Jun 2007 18:08:11 -0400

Matthew, not speaking for the editors, wrote:

> But when it comes to distributing a library to users who don't have
> access to your SVN repository, or who are combining libraries from many
> different sources (managed in different repositories), then it makes
> sense to put a version number at packaging time, at least on modules
> that are intended for external use.

This makes sense if you are the only one who is
distributing a library of that name, but it does
not make sense when several different vendors are
distributing incompatible libraries that have the
same name *and* version number.

By requiring implementors of Scheme to distribute
incompatible libraries that have exactly the same
name and version number, e.g. (rnrs base (6)), the
recent drafts have given us an example of how the
proposed versioning facility should *not* be used.

Now that the editors have brought such problems to
our attention, reverting to (r6rs base) etc would
not stop us from perceiving those problems. There
does not seem to be any sensible way for the Klepto
version of (r6rs enum) to be distinguished from the
HerrScheme version. The name itself apparently has
to match exactly (else the (r6rs) and (r6rs r5rs)
libraries wouldn't work), so we can't add klepto or
herrscheme to the end of the name. We can't put
klepto or herrscheme in the version either, since
the version consists of a sequence of numbers.

So the editors created this controversy by misusing
the version feature in the report itself. As a wise
man once told me:

  To say that something suffers the disadvantages
  of its advantages is a pretty minimal sort of
  irony.

Will
Received on Thu Jun 28 2007 - 18:08:11 UTC

This archive was generated by hypermail 2.3.0 : Wed Oct 23 2024 - 09:15:01 UTC