I've just merged contrib's lazy branch into trunk, since I couldn't
think of any reason not to -- contrib svn 478
So nobody should upgrade contrib now either, unless you're working on
fixing it for Clojure svn rev 1287.
Contrib authors: the lazy branch is still there, but it's probably
best to ignore it now and make all further lazy changes to trunk. If
it seems to be working, we can delete the lazy branch later. Thanks
Stuart for setting that up and getting a bunch of key changes in.
--Chouser
Clojure-contrib svn rev 482 can now be compiled and built into a .jar
with Clojure svn rev 1291. This includes patches to several contrib
libs from several authors, but I assume not all of the contrib libs
have been throughly tested yet.
--Chouser
--
R. Mark Volkmann
Object Computing, Inc.
Is there something wrong with that? It looks right and like it
matches the docs to me.
> Idiom "conj nil" is used in 'reverse': (reduce conj nil coll)
> Currently:
> user=> (reverse [1 2])
> (2 1)
> user=> (reverse [1])
> (1)
> user=> (reverse [])
> nil
>
> It looks that now all sequence functions return () instead of nil. Is
> 'reverse' correct?
Things that return lazy seqs now return an empty lazy seq, which
prints as (), instead of nil. However, 'reverse' is not lazy and
normally returns a PersistentList. I don't know that it'd be more
correct to return an empty PersistentList than to return nil as it
does now.
--Chouser
Wouldn't it make more sense to to return an empty version of the same
collection type? That way the following would work more like someone
would expect.
(conj (rest [1]) 2) -> [2] instead of (2)
--Stefan