[Top][All Lists]

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

Re: Merging Guile-R6RS-Libs in `master'

From: Ludovic Courtès
Subject: Re: Merging Guile-R6RS-Libs in `master'
Date: Wed, 22 Apr 2009 09:55:12 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.0.90 (gnu/linux)

Hi Julian,

Julian Graham <address@hidden> writes:

> On a related note, have you had a chance to review the R6RS library
> search mechanism I proposed a while back? [1]  Using that algorithm
> (and going with the `ice-9' prefix), your modules could be wrapped
> such that:
>   * There would exist a library wrapper module called `(rnrs bytevectors)'
>   * Loading this module would cause the library form for the R6RS
> library `(rnrs bytevectors (6))' to be loaded (from, say, a file in
> the same directory called "bytevectors.scm.6") and registered with the
> R6RS library system.
>   * This library would delegate to `(ice-9 rnrs bytevector)' and
> re-export its bindings as required.
> Does that make sense?  This way your module would be available both to
> users of the Guile module and to users of R6RS libraries while
> maintaining proper version semantics.

Hmm, I concur with Andy "that the Guile module `(foo)' should be
representable as the R6RS module `(foo)', and vice versa".  Is there any
reason why this wouldn't be possible (sorry if this has already been

That means, for instance, that module versioning could first be
implemented in Guile's module system, which would then simply be used by
the `library' form.

The main differences between these two module systems are module
versioning, and phase separation.  Fortunately, R6RS' system is a
superset of Guile's, so we could extend the latter so that it could be
used as the foundation of the former.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]