Ugih,

> (into '(1  2 3) '(3 2 1)) => (1 2 3 1 2 3)
> (into [1 2 3] [3 2 1])  => [1 2 3 3 2 1]

When you `add` something to a vector it gets added to the end and when
you do the same with a list, it gets added to the front. It happens
that way because such behaviour is the most obvious for vectors [a la
arrays] & lists [a la singly linked lists].

Consider this as well -

(conj [1 2 3] 4)
;=> [1 2 3 4]

(conj '(1 2 3) 4)
;=> (4 1 2 3)

> (take-while even? [1 2 3 4]) => ()
> ?

`take-while` stops as soon as the predicate is false, in this case, it
stops at 1, and returns an empty sequence.

May be you are looking for filter?

(filter even? [1 2 3 4])
;=> (2 4)

Hope this helps.

Regards,
BG

-- 
Baishampayan Ghose
b.ghose at gmail.com

-- 
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