3 ms·
The simple fact that Clojure is dynamically typed tells me that this language is simply not suited for large scale programming. The trend in programming langua
by hota_mazi 8y ago
The simple fact that Clojure is dynamically typed tells me that this language is simply not suited for large scale programming.
The trend in programming languages is pretty clear, we are moving more and more strongly toward languages that are statically typed and with type inference.
And for good reasons, in my opinion.
- didibus 8y agoThe trend is as you said, a fashion trend. The truth is, the issues that come out of your current model of programming makes you seek something that trades them out for other issues. Right now, those other issues are unknown to you, and you're not feeling the pain they bring. 10 years from now, they'll be all you complain about, and the trend will go back. Now, maybe I'm wrong, but its rare that a truly better paradigm shows up. It happened before though, so might happen again. Maybe that'll be inferred static types, but we've had those for so long already that I'm doubtful. For example, Clojure has infered static types, a lot of people tried it and felt it was more trouble then worth. So in the small Clojure world, the trend to infered static types already happened and passed by back to runtime contracts.
- gkya 8y agoIt's not really clear to me what you mean with "scale" here. Are you referring to the scale of a program, i.e. size in LoC and/or complexity of components, or to the scale of a team of developers, i.e. the number of persons working on a given codebase?
- hota_mazi 8y agoBoth. Scale in performance, since dynamically typed languages have fundamental hurdles that will always make programs slower than when written in a statically typed language. And scale in code base and developer strain. The fact that it's mathematically impossible to reliably refactor code automatically if the types are absent encourage spaghetti code bases that developers are afraid to modify because they can never be sure they're not breaking anything. Such hesitations never happen in statically typed languages.