You can talk about Clojure operations from a type perspective, but I think when you do so, you are largely missing the point of Clojure.
There is no Clojure operation for "add something to the right side of a list" - instead there is the far simpler (in simple vs easy terms) "add something to a collection". Understanding the difference and why it's important are far more illuminating than just forcing your prior model (like tupelo's prepend/append). If your goal is education, then it's doubly important to take this journey. It may be a few stops longer, but you'll actually learn a lot more and create a mental model that will help you understand more of Clojure's philosophy. On Tuesday, July 17, 2018 at 12:17:39 PM UTC-5, Gary Trakhman wrote: > > I'm just referring to a language design tradeoff, specifically clojure > picks ad-hoc polymorphism over making it easy to reason about types. > Subtyping, polymorphism, and the ability to do efficient type inference > (auto and human) are a real debate outside of clojure. > > People wanting more specific functions are looking for it to be easier to > know the type of something. > > Clojure and other dynamic languages tend to convert stuff for you all the > time implicitly, which you get used to eventually, but the OP was talking > about using this for education, and I think no one wants to learn about > computational complexity before they can add something to the right side of > a list. > -- 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.