On Mon, Mar 26, 2012 at 2:35 PM, Cedric Greevey <cgree...@gmail.com> wrote:
> > I don't agree, and furthermore I consider responding to someone's > reasoned debate with an accusation that they in any way failed to > comprehend something to be insulting and rude. The onus is on you to > communicate clearly. If you say X when you really meant Y, and then > someone provides a reasonable counterargument to X, in particular, > "you missed the point" is not a nice way to respond. If your actual > point was Y, you should have said so in the first place. Attempting to > place the blame on the other party for your own confusion, > misstatement, or what-have-you is simply not very sporting. > > I apologise, there's no excuse for my response. I will continue the debate with more class. On Mon, Mar 26, 2012 at 12:45 AM, Ambrose Bonnaire-Sergeant > > It breaks the uniformity of Clojure syntax. > > On Mon, Mar 26, 2012 at 12:22 PM, Cedric Greevey <cgree...@gmail.com> wrote: >> Isn't this just another way of saying "humans will have to read to the >> end to see what the form is?" No, this is a way of saying the {{}} proposal is very unlikely to succeed for reasons that include violating established, well thought out, conventions. I consider "success" as approval by any Clojure/core members. > I provided a response to that objection already. You addressed the merits of using syntax that complects human recognition with reading entire forms, but did not address the merits of breaking an important syntax convention. To be fair, the question you were answering was addressing the former. Of course, this suggests an alternative, too: > <{set items go here}> - <{}> is a breaking change. Consider (comp <{:a :b}>). - Both left and right sides now use 2 tokens, afaik no other syntax needs this. - Even <{} and {}> have similar problems to <{}>. - White space issues, as outlined in your proposal - Consider (:refer-clojure :exclude [< >]) and redefining them in the module. The assumptions for avoiding the corner cases no longer hold. - The implementation probably wouldn't be too much fun either, not that I tried. IMO this syntax would be an even bigger disaster than {{}}. On Sun, Mar 25, 2012 at 5:24 PM, Evan Mezeske <emeze...@gmail.com> wrote: > > Anyway, no matter how beautiful a new set notation might be (not that I > > personally think {{}} is beautiful), it seems that having two notations > for > > one concept would be more confusing than having one notation for one > > concept. You *know* that this question would appear on a regular basis, > > "What is the difference between #{} and {{}}?" Exactly. There is *no* difference. At all. On Mon, Mar 26, 2012 at 8:44 AM, Cedric Greevey <cgree...@gmail.com> wrote: > On Sun, Mar 25, 2012 at 8:36 PM, Cedric Greevey <cgree...@gmail.com> > wrote: > > How often do we get "What are the differences among 100, 0144, and > > 0x64, and which should I use when?" ;) > > Nevermind: > > #^{:foo 42} thingy vs. ^{:foo 42} thingy; > (deref foo) vs. @foo; > #'bar vs. (var bar); > #(+ %2 (* 2 %1)) vs. (fn [a b] (+ b (* 2 a))); > 'quux vs. (quote quux); > :user/baz vs. ::baz (in ns user); > (cons mumble some-seq) vs. (conj some-seq mumble); > and probably others. :) > cons vs. conj IMO is completely irrelevant to this discussion. The only redundant syntax in that list #^{} vs. ^{}. A wart in the language, but a clear improvement nonetheless. Thankfully Clojure is very conservative with breaking changes. All others serve a purpose, no matter how minor. How is this proposal (on *any* alternative set syntax) different to proposing :::user to be synonymous to ::user, wrt redundant syntax? Alex hit the nail on the head with the 3rd post of this thread. Thanks, Ambrose -- 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