Instead of using overloaded (), may be f[x] will cause less trouble, and more inline with clojure's syntax as [ ] already being used for defining the arguments of the function.
Louis On Dec 27, 5:26 pm, Gert Verhoog <m...@gertalot.com> wrote: > On 26/12/2011, at 6:23 PM, Louis Yu Lu wrote: > > > My proposition is enhance Clojure to accept both (f x) and f(x) > > Fortunately, I don't see that happening, for several reasons (many of which > have been mentioned). It adds complexity, causes confusion and inconsistent > coding styles and it will break everything that parses s-expressions (data = > code after all). Imagine trying to read lisp code that is a mix-n-match of > the following: > > ;; the following would be equivalent: > (g (f a b)) > (g f(a b)) > g((f a b)) > g(f(a b)) > > ;; the following would be equivalent: > ((f a) b) > (f(a) b) > (f a)(b) > f(a)(b) > > FOUR different ways of expressing ((f a) b). How is that helping those trying > to learn Clojure? > > Also, note that (g f(a b)) and (g f (a b)) have very different semantics, > even though the only difference is the added whitespace between two tokens. > > If you stick with the elegant simplicity of s-expressions for a few more > weeks, I promise that you won't even notice it anymore and you'll find that > it's perfectly readable. > > cheers, > gert -- 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