Hacker News new | ask | show | jobs
by KirinDave 3219 days ago
Clojure supports this though.

And given that removing the FP nature of Scala pretty much hamstrings its value proposition, I can see why he'd be dismissive of it on those grounds.

1 comments

Clojure supports class based OOP? Never heard of it. Could you give me a link to the relevant documentation page?
Not really a OOP programmer, but I think the following cover some reasonable subset of OOP:

https://clojure.org/reference/multimethods

https://clojure.org/reference/protocols

That's selling Clojure a little short. Clojure has full Java interop via reify, proxy, gen-class, deftype and definterface.
It's not class-based OOP.
Clojure supports protocols and multi-methods, the building blocks of CLOS, Common Lisp Object System.

Already at Xerox PARC, Lisps started to support OOP, with FLAVORS for Interlisp-D being one of the first ones.

EDIT: Disregard the last paragraph, lispm is right.

'Loops' was developed at Xerox PARC for Interlisp. Flavors was from MIT for Lisp Machine Lisp. Multimethods were first developed for Common Lisp in CommonLoops around 1986 at Xerox PARC.
Thanks for the correction. I typed it on the go without checking first.
Via records (defrecord) and protocols.