Yes but the contract of subvec is that it returns a "persistent
vector" and the resulting data structure returns "true" under the
"vector?" predicate. I know that subvec returns a different type
because I've looked at the Java source code but that's a leaky
abstraction.

On Apr 30, 10:57 am, Ken Wesson <kwess...@gmail.com> wrote:
> On Sat, Apr 30, 2011 at 11:27 AM, Armando Blancas
>
> <armando_blan...@yahoo.com> wrote:
> > On Apr 29, 10:54 am, Nathan Sorenson <n...@sfu.ca> wrote:
> >> (transient (subvec [1 2 3 4 5] 0 2)) fails with a class cast
> >> exception. Is this expected/unavoidable? How do I know whether the
> >> vectors I'm passed are regular vectors or come via subvec?
>
> >> I'm assuming I lose all the performance benefits of subvec if I
> >> defensively pour all vectors into a new vector before calling
> >> transient?
>
> >> I'm on clojure 1.3.0-alpha4
>
> > Check this out:http://clojure.org/Transients
>
> There is no mention of subvec on that page.

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