Re: %nil once again

2009-07-30 Thread Daniel Kraft
Neil Jerram wrote: Andy Wingo writes: Other things needed would be for instance terminating rest-arguments by %nil rather than '() and the like. Why is that needed? I.e. Why is it important for a rest argument to be terminated with %nil instead of with () ? Well, I don't think it is "impo

Re: %nil once again

2009-07-30 Thread Daniel Kraft
Hi Neil, Neil Jerram wrote: The only downside I can see to this is that if code were to be ported from elisp to Scheme there would now be code that assumed a '() return as false when #f would be false, but this could be fixed using a predicate like elisp-false? (or null-or-false? or ... somethin

Re: %nil once again

2009-07-30 Thread Neil Jerram
Andy Wingo writes: >> Other things needed would be for instance terminating rest-arguments >> by %nil rather than '() and the like. Why is that needed? I.e. Why is it important for a rest argument to be terminated with %nil instead of with () ? Neil

Re: %nil once again

2009-07-30 Thread Neil Jerram
Clinton Ebadi writes: > Why not eliminate %nil/#nil and replace it with ... '(). This would > allow elisp to reuse all (or at least most) of the Scheme list functions > without having to muddy Scheme semantics with special #f/#nil handling, > but would require a very tiny elisp specific truth pre

Re: %nil once again

2009-07-23 Thread Daniel Kraft
Hi Andy, thanks for your comments! Andy Wingo wrote: Reviewing (and merging as much as possible of) your elisp branch is my next Guile task, after taking care of that bug recently reported by Martin Ward. Should be short work at this point. Cool! But just take your time ;) At least, is the

Re: %nil once again

2009-07-23 Thread Andy Wingo
On Mon 20 Jul 2009 05:33, Ken Raeburn writes: > On Jul 19, 2009, at 16:10, Neil Jerram wrote: >>> BTW, I implemented also the function bindings of symbols using this >>> fluid-based dynamic scoping at the moment -- but on second thought, >>> there's no scoping at all for function slots (all are g

Re: %nil once again

2009-07-23 Thread Andy Wingo
Hi Daniel! Reviewing (and merging as much as possible of) your elisp branch is my next Guile task, after taking care of that bug recently reported by Martin Ward. Should be short work at this point. This is a little late, but fwiw... On Thu 16 Jul 2009 15:47, Daniel Kraft writes: > I think I g

Re: %nil once again

2009-07-20 Thread Clinton Ebadi
Daniel Kraft writes: > Hi, > > I think I got the test-suite as well as a basic macro implementation > (the compiler framework is really cool, that was fairly easy to do); > recursive macros do not yet work, but otherwise it looks fine. > > However, I want to tackle quasi-quotes (besides others) n

Re: %nil once again

2009-07-20 Thread Ken Raeburn
On Jul 20, 2009, at 04:12, Daniel Kraft wrote: No, I don't think there is. `let' can't operate on function slots. Not in the main emacs lisp implementation. However, cl-macs.el provides an "flet" macro that does work on function slots; it uses the "letf" macro which expands to include a use

Re: %nil once again

2009-07-20 Thread Daniel Kraft
Ken Raeburn wrote: On Jul 19, 2009, at 16:10, Neil Jerram wrote: BTW, I implemented also the function bindings of symbols using this fluid-based dynamic scoping at the moment -- but on second thought, there's no scoping at all for function slots (all are global), is there? No, I don't think th

Re: %nil once again

2009-07-19 Thread Ken Raeburn
On Jul 19, 2009, at 16:10, Neil Jerram wrote: BTW, I implemented also the function bindings of symbols using this fluid-based dynamic scoping at the moment -- but on second thought, there's no scoping at all for function slots (all are global), is there? No, I don't think there is. `let' can't

Re: %nil once again

2009-07-19 Thread Neil Jerram
Daniel Kraft writes: > Good, that sounds reasonable and is also what I suggest. If we are > one day able to actually run existing elisp code through Guile, we'll > find out if anything needs to be changed in order to get a usable > implementation anyways. Agreed. > BTW, I implemented also the

Re: %nil once again

2009-07-19 Thread Daniel Kraft
Hi Neil, Neil Jerram wrote: Daniel Kraft writes: scheme@(guile-user)> (null? %nil) #f scheme@(guile-user)> (equal? %nil (cdr (list 1))) #f I believe those work in the interpreter, and so are VM bugs. Can you check that with ,o interp #t ? The first one is indeed #t with the interpreter, th

Re: %nil once again

2009-07-19 Thread Neil Jerram
Daniel Kraft writes: >>> scheme@(guile-user)> (null? %nil) >>> #f >>> scheme@(guile-user)> (equal? %nil (cdr (list 1))) >>> #f >> >> I believe those work in the interpreter, and so are VM bugs. Can you >> check that with ,o interp #t ? > > The first one is indeed #t with the interpreter, the sec

Re: %nil once again

2009-07-17 Thread Andreas Rottmann
Daniel Kraft writes: > Hi Neil, > > Neil Jerram wrote: >> Daniel Kraft writes: >>> I think I got the test-suite as well as a basic macro implementation >>> (the compiler framework is really cool, that was fairly easy to do); >>> recursive macros do not yet work, but otherwise it looks fine. >>>

Re: %nil once again

2009-07-17 Thread Daniel Kraft
Hi Neil, Neil Jerram wrote: Daniel Kraft writes: I think I got the test-suite as well as a basic macro implementation (the compiler framework is really cool, that was fairly easy to do); recursive macros do not yet work, but otherwise it looks fine. However, I want to tackle quasi-quotes (bes

Re: %nil once again

2009-07-17 Thread Neil Jerram
Daniel Kraft writes: > Hi, Hi Daniel! > I think I got the test-suite as well as a basic macro implementation > (the compiler framework is really cool, that was fairly easy to do); > recursive macros do not yet work, but otherwise it looks fine. > > However, I want to tackle quasi-quotes (beside

%nil once again

2009-07-16 Thread Daniel Kraft
Hi, I think I got the test-suite as well as a basic macro implementation (the compiler framework is really cool, that was fairly easy to do); recursive macros do not yet work, but otherwise it looks fine. However, I want to tackle quasi-quotes (besides others) now; and in Elisp %nil is not o