Hacker News new | ask | show | jobs
by timbaldridge 4956 days ago
This is why I use Clojure. I can do Functional, OOP, logic, or any of the dozens of other programming styles in one language. And since it's a lisp I don't have to worry about having to need extra syntax from the language writers to get what I want.

Pragmatic languages FTW!

2 comments

I interpreted the OP suggesting that you not use a single multiparadigm language because then you won't be forced to follow the new principle everywhere. Of course, it's possible to do (for example) OOP in a lisp-like language, but you'll really be forced to work with it in a language like Java, which may give you a deeper understanding.
Well, avoid Java, which is just C++--, and think Smalltalk instead.
Therefore Java == C?
I don’t think programming languages have inverses, so in general λ + 1 − 1 ≠ λ.
Well, only shittier.
Your comment gives the impression that Clojure is a big multiparadigm mess. But it is not. Clojure's design is clean and simple. Clojure is mostly functional. Sure, since it's a Lisp one can kind of incorporate other paradigms with macros. But out of the box Clojure does not do Java-style OOP (except for interop) or Prolog-style logic.
Perhaps it does place oriented OOP poorly, but it actually has an extremely nice logic engine (see core.logic).
Yeah, I know about it, but it's an additional dependency, right? [org.clojure/core.logic "0.7.5"] Whatever, Clojure is clean and simple is what I wanted to say. :)