Re: r6rs libraries, round three

2009-12-28 Thread Ludovic Courtès
Hello, Neil Jerram writes: > Julian Graham writes: > >> On a related note, I assume Emacs' `scheme-mode' has been adding >> unwanted tabs? What should I do to correct this in my local >> environment? > > (setq indent-tabs-mode nil) We should put that in ‘.dir-locals.el’, once for all. Thanks

Re: r6rs libraries, round three

2009-12-27 Thread Julian Graham
Hi all, Find attached a revised and polished version of the `(ice-9 r6rs-libraries)' module I submitted a couple of months ago. This version includes the following changes: * The library transformer code's been cleaned up and compacted (by more than 30%) and now uses a `defmacro' form similar to

Re: r6rs libraries, round three

2009-12-24 Thread Andy Wingo
On Wed 23 Dec 2009 16:35, Julian Graham writes: >> Thanks for all. I wrapped your commit messages, detabbed the files, and >> did some minor editing. Please look at the diffs relative to your >> patches. But other than that, thanks very much! :-)) > > No, thank /you/! ¡Que buena sorpresa! > > On

Re: r6rs libraries, round three

2009-12-23 Thread Neil Jerram
Julian Graham writes: > On a related note, I assume Emacs' `scheme-mode' has been adding > unwanted tabs? What should I do to correct this in my local > environment? (setq indent-tabs-mode nil) Neil

Re: r6rs libraries, round three

2009-12-23 Thread Julian Graham
> Thanks for all. I wrapped your commit messages, detabbed the files, and > did some minor editing. Please look at the diffs relative to your > patches. But other than that, thanks very much! :-)) No, thank /you/! ¡Que buena sorpresa! On a related note, I assume Emacs' `scheme-mode' has been add

Re: r6rs libraries, round three

2009-12-23 Thread Andy Wingo
On Sun 13 Dec 2009 04:24, Julian Graham writes: > Find attached updated versions of the patches that provide support for > R6RS-compatible versions and renaming bindings on export (the two core > modifications required to support the libraries implementation). > They've been rebased against the c

Re: r6rs libraries, round three

2009-12-12 Thread Julian Graham
Hi all, Find attached updated versions of the patches that provide support for R6RS-compatible versions and renaming bindings on export (the two core modifications required to support the libraries implementation). They've been rebased against the current HEAD and some reasonably comprehensive doc

Re: r6rs libraries, round three

2009-11-17 Thread Julian Graham
Hi Andreas, > IIRC, R6RS doesn't /require/ that implementations are able to > differentiate bindings from different phases -- e.g. Ikarus essentially > ignores phase specifications (implicit phasing -- there were some > discussions about that on ikarus-users, which I can't find ATM, but [0] > sho

Re: r6rs libraries, round three

2009-11-17 Thread Andreas Rottmann
Julian Graham writes: > I probably should have said "rough prototype" instead of "working > prototype" -- the actual macro that transforms library definitions > into module definitions is kind of gross and uses datum->syntax a fair > amount where it probably doesn't need to / shouldn't. I'm no s

Re: r6rs libraries, round three

2009-11-17 Thread Andreas Rottmann
Andy Wingo writes: > Hi Julian! > > On Sun 01 Nov 2009 20:26, Julian Graham writes: > >> Find attached a working prototype of R6RS library support > > I think I missed this one, it was threaded above the end of guile-devel > that I read :-) Sorry about that. > > Note that quasisyntax is now merg

Re: r6rs libraries, round three

2009-11-17 Thread Julian Graham
Hi Andy, > Note that quasisyntax is now merged. You can do things without > quasisyntax using with-syntax. Of course -- our version of quasisyntax is implemented in terms of with-syntax! I was just being lazy. > Your code is remarkably short. That is my initial impression, positive > :-) But I

Re: r6rs libraries, round three

2009-11-17 Thread Andy Wingo
Hi Julian! On Sun 01 Nov 2009 20:26, Julian Graham writes: > Find attached a working prototype of R6RS library support I think I missed this one, it was threaded above the end of guile-devel that I read :-) Sorry about that. Note that quasisyntax is now merged. You can do things without quasis

Re: r6rs libraries, round three

2009-11-16 Thread Julian Graham
> As I said earlier, I'm happy to provide full documentation for all of > this code if the consensus is that I'm on the right track. Any feeling either way on those patches? I'm happy to create a remote tracking branch if that'd make it easier for people to review.

Re: r6rs libraries, round three

2009-11-01 Thread Julian Graham
Hi all, Find attached a working prototype of R6RS library support, in the form of a Guile module called `(r6rs-libraries)'. The module depends on the two attached patches, which add, respectively, support for the `#:version' keyword [1] and support for renaming bindings on export [2]. It works b

Re: r6rs libraries, round three

2009-10-25 Thread Julian Graham
Hi Andy, > It should work now, though with hacks -- if you manipulate the > module-public-interface directly. But perhaps some more baked in support > would be useful. Oh, certainly -- as I've learned over these many months, you can do some very interesting things by working with the lower-level

Re: r6rs libraries, round three

2009-10-25 Thread Andy Wingo
Hi Julian, On Sat 24 Oct 2009 21:10, Julian Graham writes: > Besides version, another thing that would be very useful to have > "native" Guile support for is being able to export bindings with names > other than the ones given to them within the module It should work now, though with hacks -- i

Re: r6rs libraries, round three

2009-10-24 Thread Julian Graham
Hi all, Besides version, another thing that would be very useful to have "native" Guile support for is being able to export bindings with names other than the ones given to them within the module -- that is, to be able to "rename" variables exported as part of the module's public interface in `def

Re: r6rs libraries, round three

2009-09-30 Thread Julian Graham
Hi Guilers, Okay, after poking around in the manual and the code, it looks like `load-module' does what I need. Find attached two patches that, combined, add full support for R6RS-style version information to Guile's module system. I've done a bit of testing and believe that this code does the R

r6rs libraries, round three

2009-09-26 Thread Julian Graham
Hi Guilers, Having been motivated by an extended discussion with Andy over pints in Brooklyn last weekend, I've resolved to return to the issue of R6RS library support once more. As discussed the last time we took this on, I think the first step is getting support for version information into the