Clojure for Lisp Programmers Part 1 - Rich Hickey

ClojureTV · 25K views · 2012 · 1:28:59

Open on YouTube

Functional programmingProgramming language designTech pioneers & interviewstalk

Why Hacker News recommends it

Referenced for Hickey's reasoning on design choices such as macros and not building on SBCL.

What it is

Rich Hickey presents an extensive introduction to Clojure at the Boston Lisp meeting, assuming prior Lisp knowledge. It covers the language's design decisions relative to other Lisps.

Recommended by 1 HN commenters across 1 different months, 2017 to 2019.

What Hacker News said

Recommends tosh · 2019-07 · on “Clojure for Lisp Programmers (2008)”

Context: this is not only a very good introduction to Clojure and the design decisions made by Rich Hickey it also is a video that isn't very widely known. The video was uploaded to Youtube after the migration from Blip.tv but somehow got broken ( [this video] ) and lived in a parallel universe in Youtube. I remember I found the video a few years ago but was unable to watch it. Last year someone re-uploaded the video to Youtube and it seems to works now. Transcript: [LINK]

Cites joe-user · 2017-11 · on “Effective Programs: 10 Years of Clojure”

> Pity he hadn't heard of Armed Bear Common Lisp ( [LINK] ), which runs on the JVM. He was certainly aware of SBCL. He had a number of reasons for not wanting to use it. [1] > I don't mind mutable state, since the real world is not functional: I hear this argument often, but the "real world" is not linked lists or hash maps or mutable or 0s and 1s either, but they are all useful representations. > real programs are all about side effects Clojure has plenty of facilities for side effects, and without having to resort to monads (though you could if you wanted). [1]: [this video]

Cites aidenn0 · 2019-01 · on “Scripting in Common Lisp”

Hy may have changed since I last looked at it, but when I had looked at it, Hy was more of an s-expression syntax bolted onto python. Some random thoughts on why this matters: Clojure is very much not a thin s-expression layer for java; that would have been terrible (Python is more like lisp than java which is why Hy is tenable whatsoever). In particular, CL style macros with out some first-class concept of symbols are a footgun[1], but I'm sure I could find other issues. Another item that can't be ignored is that Hy selected the clojure syntax, which is going to be a turn-off for anyone coming from Lisp or Scheme. Finally, there are hundreds of thin s-expression layers on top of existing la