Hello Guilers,

Andy Wingo <wi...@pobox.com> writes:

> On Sun 24 Jan 2010 18:53, Julian Graham <jool...@gmail.com> writes:
>
>> As mentioned in an earlier email [0], I've been working on
>> implementations for the libraries that make up the so-called R6RS
>> Standard Libraries [1], along with test suites.  Where possible, I've
>> tried to wrap existing Guile functionality instead of writing things
>> from scratch.  Speaking optimistically, I think I'm about 80% of the
>> way there (minus the test cases).  There are quite a few files, so, to
>> facilitate review, I've uploaded them to my web site [2].  There's
>> also an updated copy of the `(ice-9 r6rs-libraries)' module there,
>> which resolves a couple of issues present in the most recent version I
>> submitted to the list.
>>
>> What do people think?
>
> Excellent hacking!

+1 :-)

>> One point that may be of interest is that I've chosen to provide the
>> code in the form of R6RS libraries rather than Guile modules.  My
>> thinking is that the primary utility of most of these libraries lies
>> in the cross-Scheme compatibility they provide, and thus they're not
>> of particular interest to users writing code intended only for Guile.
>> In cases where there's actual new functionality, such as with the
>> bytevector features, a Guile module representation is probably more
>> useful.
>
> Agreed.

Though if ‘library’ expands to ‘define-module’, R6RS modules will also
be readily usable as if they were “regular” guile modules, right?

> I also think we should have `library' and `import' in the basic
> environment.

The global environment is already a crowded place, and having these
forms globally may make it harder to maintain backward compatibility in
the future, should R15RS have an incompatible ‘library’ form, for
instance.

How about having a special module and a command-line option, just like
we have ‘--use-srfi’?

Thanks,
Ludo’.



Reply via email to