I have always been a podcast person. This episode combines most of my favorite things about them: a good interviewer, a nice amount of time, and an expert with an opportunity to go all out on a deep explanation about whatever.
I want to talk about the part of this explanation that changed a view of mine the hardest. Right after the beginning Mr.Gabriel gives a brief on the implementation of lisp. He talks a bit about the lisp interpreter, and how it is written in lisp. How in principle it would be recursive all the way down, but it really doesn't. Over the few weeks that I've known lisp I always thought of Lisp as something very complicated, because it's implementation details are often talked about a lot when it is presented. With this explanation I realized that the reason is that its implementation is a principle that is so simple that it is actually easy to talk about it casually to people who do not know a lot about the innerworkings of programming languages. This is not true for most other languages I've gotten to know. You often talk about how high-level it is, how and where to use it and what you can do with it.
To me this justifies studying Lisp on the programming languages class. It opens up the conversation on the innerworkings of languages, and that is what it is all about.