On Mar 11, 2009, at 3:31, Jon Harrop wrote: > Most of the reasons given in this thread were red herrings and many > of static > typing's real issues were not even touched upon:
... I'd add two more: - Metaprogramming is a lot more complicated with static typing. Look at MetaOCaml or TemplateHaskell and compare to any Lisp to appreciate the difference. Of course, Lisp's syntactic simplicity is also an important factor, but type-correctness adds another level of complexity to metaprogramming. - Type-related boilerplate code can make a program harder to read in some situations. For an example, look at Haskell's monad transformer implementations and compare to Clojure's. In the Haskell code, wrapping the real data into an algebraic data type that exists only for type checking, and the associated unwrapping, seriously obfuscates the rather simple structure of the monad transformers. Konrad. --~--~---------~--~----~------------~-------~--~----~ 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 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 -~----------~----~----~----~------~----~------~--~---