Thank you for all of the very helpful answers about nil and "some".  I 
understand now.

I am *very* grateful to Rich Hickey and all of the other dedicated Clojure 
developers.  For what it's worth, I'll add my voice to those who are 
bothered by the two distinct uses of "some" (some, some-fn vs some->, 
some->>, some?) bother me. 

I celebrate the semi-arbitrary quirkiness of function names in Common Lisp, 
but that's kind of perverse.  I celebrate more, and benefit from the 
rational systematicity of function names in Clojure.  I guess wouldn't be 
bothered by the two "some" concepts in Clojure if the language hadn't 
already exhibited such a high standard for function choices and names.  I 
am fairly new to Clojure, but the elegant design and naming is obviously a 
great part of the appeal of the language.  I have great respect for people 
who have been working with Clojure for a long time, and especially those 
who have designed and built the language, but "some" surprises me.

I understand that we don't want to break code that already uses the 
existing functions with "some" in their names, and there is a lot of code 
to break at this point.  But is there a possibility of providing new names 
and deprecating old ones for the sake of long term improvement?  In 1.5, 
there are two functions each with the two meanings.  Adding more functions 
without fixing the issue has the potential to exacerbate the problem by 
making it harder to abandon one use or the other of "some".  If adding to 
the not-nil family of "some" functions is preferable, maybe some and 
some-fn could be deprecated in favor of alternative names for the same 
functions.  Maybe that's too difficult at this point, though.

(I keep thinking of something I once read by Bjarne Stroustrup suggesting 
that when he first introduced C++, his goal was to keep it simple and 
elegant.  I'm not seriously worried that Clojure will become a ... 
monstrosity (I say that affectionately) like Common Lisp, though.)

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