On Wed, Oct 8, 2014 at 10:55 PM, John Gabriele <jmg3...@gmail.com> wrote:
> * (when calling `seq` on a coll) "...In either case, if the collection > is empty, `seq` returns nil and never an empty sequence. Functions that > promise to return seqs (not sequences), such as `next`, work the same way." > > I think that's a typo. I don't know what the difference between a "seq" and a "sequence" would be in this context. Thanks, Ambrose > > > On Wednesday, October 8, 2014 8:16:38 PM UTC-4, James Reeves wrote: >> >> The words "seq" and "sequence" can be used interchangeably. >> >> The "map" and "filter" functions return seqs. >> >> Yes, a seq may be lazy, but vectors and lists cannot. >> >> "seqable" means any data structure that can be turned into a seq using >> the "seq" function. This includes the Clojure collections, but also >> strings, arrays and Java collections. >> >> The Sequential interface is a way of indicating a collection has a >> natural order. So seqs, lists and vectors are sequential, but maps and sets >> are not. >> >> The ISeq interface is the internal interface for seqs. An object is a seq >> if it implements ISeq. >> >> - James >> >> >> On 8 October 2014 19:39, John Gabriele <jmg...@gmail.com> wrote: >> >>> Reading Joy of Clojure, section 5.1.2, I'm hoping someone here can help >>> me understand the following: >>> >>> * `clojure.core/seq` returns a "seq" or a "sequence"? Likewise for >>> `map` and `filter`. >>> >>> * What is the difference between a "seq" and a "sequence"? >>> >>> * A seq may possibly be lazy, but vectors and lists are always >>> fully-realized, correct? >>> >>> * What does "seqable" mean? >>> >>> * Is Seq (ISeq?) or is Sequential the `first`/`rest` API? What is the >>> difference between ISeq and Sequential (see `seq?` & `sequential?`)? >>> >>> Thanks! >>> >>> -- > 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 > --- > You received this message because you are subscribed to the Google Groups > "Clojure" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to clojure+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/d/optout. > -- 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 --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.