Hacker News new | comments | show | ask | jobs | submit login

No more BASIC, but I still code in Common Lisp whenever I can. And I'm using some library code that I wrote when I was in grad school 25 years ago.

Once you grok Lisp, everything else is easy. You come to realize that the vast majority of what passes for "new technologies" is really just a re-discovery of something that exists (or is easily implemented) in CL. That makes it a lot easier (if a tad frustrating at times) to keep up.

EDIT: CLOS, and generic functions in particular, are a HUGE lever that no other language has co-opted yet.




Ha! I'm still using a piece of Lisp library code that I wrote as an undergrad 35 years ago :-)


You come to realize that the vast majority of what passes for "new technologies" is really just a re-discovery of something that exists (or is easily implemented) in CL

So much this. (From a soon-to-be geezer who's staring down 40 soon.)


> no other language has co-opted yet.

Check out Dylan, Julia, and my old hobby language Magpie[1].

[1]: http://magpie-lang.org/multimethods.html


I guess I should have said: no other mainstream language.


Julia has generic function but they are not defined in Julia itself nor is dispatch mechanism can be extended in Julia itself. CLOS is all about meta-circular semantics so I wouldn't include Julia in there (at least not fully)


Same with conditions and restarts.


GOOPS[0] in guile is definitely hugely inspired by CLOS, which also has generic functions with multi-method dispatch.

I highly recommend guile to anyone who wants the battery included nature of common lisp. I know that racket is also a great choice here, I just have little experience with it.


Racket's object system is largely inspired by Java. So is its statically-compiled module system (in which you can't change anything once it's been compiled, unlike a real Lisp), and Raco build tool. Programming with objects in Racket feels a lot like programming with Java objects in Clojure.




Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | DMCA | Apply to YC | Contact

Search: