The Clojure parser I'm writing needs to differentiate between nil and
the empty list. It should parse "[1 2 3]" and read that as [1 2 3],
and the same for lists, maps, and sets. If it parses "()" and reads
that nil, then it's not working correctly.

In addition, code in some other libraries I'm writing depends on the
vector? and list? functions. (list? (list* coll)) is (confusingly)
always false unless coll is a list to begin with. That explains
another bug that I was encountering earlier...

What I don't get is the terminology and the doc of list*. list*
definitely does not return lists; it returns sequences, a superset of
the list. This does affect any code that depends on collection types
(e.g. list?).

On Jan 23, 1:02 am, ataggart <alex.tagg...@gmail.com> wrote:
> I'm still confused by why you'd need a list version of vec.  Just
> return the sequence.  Whatever would consume the list should
> equivalently consume the seq.

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en

Reply via email to