On Sunday, February 2, 2014 3:07:27 PM UTC-8, Aaron France wrote:
>
> What's the benefit of hiding/abstracting the underlying platform away? 
>
>
The obvious answer to this is it limits exposure to the complexity of the 
underlying platform, and provides a stable platform. That's usually why 
people abstract platforms.

The trade-off of embracing the platform is that the complexity of using 
clojure is not just the complexity of clojure. It is the complexity of the 
jvm plus the complexity of java plus the complexity of clojure plus the 
complexity of the interface between clojure and java, which is intricate. 
Thus, you need to know that in java 6 you have to make defensive copies of 
substrings, but on java 7 you don't; that on some jvm you will have 
abstract path manipulation, on others you won't; that (map #(+ 1 %) 
(float-array [1 2 3])) will run but (map #(+ 1 %) (byte-array [1 2 3])) 
will throw an error, and so-on, in unending detail.

Probably the size of this looks different if you've already internalized 
the complexity of the platform from previous experience.

-- 
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/groups/opt_out.

Reply via email to