Hacker News new | ask | show | jobs
by nabla9 3163 days ago
Lisp programming has never never pure functional programming. It has been sometimes used to teach functional programming, but traditional Lisp's (Common Lisp as good example) has always been multi-paradigm language and object systems in Lisp's are fairly advanced.

Alan Kay's definition of OOP:

>OOP to me means only messaging, local retention and protection and hiding of state-process, and extreme late-binding of all things. It can be done in Smalltalk and in LISP. There are possibly other systems in which this is possible, but I'm not aware of them.

http://userpage.fu-berlin.de/~ram/pub/pub_jf47ht81Ht/doc_kay...