Skip to content
0:00 / 0:00

#sicp#scheme#lisp

Lecture 1A: Overview and Introduction to Lisp

MIT OpenCourseWare

6.5M subscribers • 37 videos on Hallway • University channel

YouTube
  • Recommended by 11 people: 10 on Hacker News and 1 in engineering communities.
  • A classic. People kept recommending it from 2019 to 2026.
  • Presented by Harold Abelson and Gerald Jay Sussman

Beginner. No background in the topic needed.

420K views7 years ago11 recommendations

Computer scienceProgramming languagesLisp and ClojureAlgorithmsComputation and complexity

Hal Abelson and Gerald Jay Sussman introduce computer science as a way of managing complexity, using Lisp to demonstrate fundamental concepts.

MIT 6.001 Structure and Interpretation of Computer Programs, Spring 2005 Instructor: Harold Abelson, Gerald Jay Sussman, Julie Sussman View the complete course: ocw.mit.edu/6-001S05 YouTube Playlist: youtube.com/playlist?list=PLE18841CABEA24090 Overview and Introduction to Lisp Despite the copyright notice on the screen, this course is now offered under a Creative Commons license: BY-NC-SA. Details at ocw.mit.edu/terms Subtitles for this course are provided through the generous assistance of Henry Baker, Hoofar Pourzand, Heather Wood, Aleksejs Truhans, Steven Edwards, George Menhorn, and Mahendra Kumar. More courses at ocw.mit.edu

Why it's here

11 people recommend this

What people say. Universally recommended as one of the best computer science lecture series ever recorded, fundamental for any programmer.

floathubon Hacker News • Recommends

On “Ask HN: How to rediscover the joy of programming?”

Learn LISP/Scheme and lots of fundamental concepts you probably have a feel for, but in a far more profound way: 1. First watch the SICP series ( link to this video ) 2. Then work through the book ( link ) If you really do the exercises (an hour here and an hour there), you can feel you brain getting wrapped around many core notions in very illuminating ways.

k00bon Hacker News • Recommends

On “Ask HN: What new programming languages did you learn in 2020?”

The real beauty is in how few operators you need to achieve maximal expressiveness in a programming language. It makes other programming languages seem extra. Highly recommend the SICP lectures link to this video

augusto-mouraon Hacker News • Recommends

On “Not Lisp again (2009)”

The class mentioned in the article was actually made available under Creative Commons by the MIT OpenCourseWare1, you can see the entirely of the course in Youtube. I watched and cannot recommend it enough, even for seasoned programmers 1: link to this video

wiseleoon Hacker News • Recommends

On “24/7 SICP 1986 lectures stream”

It's on-demand on YouTube1 and an excellent course that is still very much relevant with very high production quality circa 1986. What makes it special is who is teaching it, which is the original authors of SICP. The course thus completely complements their book and is in the same style. The courses from later years are also on YouTube, but they don't feel the same. 1 link to this video

lab11on Hacker News • Recommends

On “Ask HN: What's the best lecture series you've ever seen?”

Not even a second of thought: Sussman's & Abelson's SICP link to this video especially the section on streams ( link ) It changed my outook on programming by pi degrees and I feel it is more needed then ever.

u/renatoalencarin r/ProgrammingLanguages • Recommends

I built a very simple Lisp interpreter with Python I was watching a Hal Abelson Lecture and decide to built an interpreter for his definition of Lisp in the Lecture. I'm not experienced building compilers and interpreters in any way, so it may look a little bit bad. I would appreciate any feedback, thanks. Check it out: https://github.com/renatoalencar/lisper

chrisaon Hacker News • Recommends

On “Structure and Interpretation of Computer Programs (1996) [pdf]”

The original course videos are on youtube too! I found them a bit easier to watch than reading the book: link to this video

abiroon Hacker News • Recommends

On “Ask HN: Which of our ideas about computation could survive a thousand years?”

I’ve included the halting problem, but omitted the Turing machine, because while ingenious, the latter is simply a hack to make proofs work and not a very good way to think about computation. Similarly, I’ve included distributed representations, but omitted backpropagation since while backprop works very well for a number of problems that are otherwise unsolvable today, it is not a particularly enlightening way to write programs. Also, the first 10 minutes of the introductory SICP lecture contains a livelier presentation of the idea in the quote: link to this video

lymitshnon Hacker News • Recommends

On “How I became a better programmer (2017)”

Maybe more of the hype comes from the fact that its a Lisp. To get a feeling for the "magic" of lisp, I would suggest either watching SICP video lecs0 or reading the book. I started learning lisp, almost the same time I've started learning programming with Java (college). Honestly I was thinking why they don't just teach us that, instead of Java at that time. Also Clojure is created by a fairly respected dude (afaik) Rich Hickey. His talks and Clojure design decision articles on the site are really insightful. Also this talk1 also pretty good overview of different paradigms and `Clojure way`, imo. 0 link to this video 1 link

laenon Hacker News • Recommends

On ““Computer science is not about computers””

Here is Harold Abelson discussing the topic in ~1986. His introduction to “Computer Science” has stuck with me for years. Interesting to see the lineage of the statement, it must have stuck with him as it has for me, when he first heard it. link to this video

bmitcon Hacker News • Recommends

On “Ask HN: Any advice on how to learn good software architecture practices?”

There are a lot of good books here: link I second the comment ( link ) recommending How to Design Programs (HTDP) and Structure and Interpretation of Computer Programs (SICP). The former has an edX course ( link and link ) and the latter has online lectures ( link to this video ) Head First Architecture ( link ) is good. Reading about systems thinking would be useful. Learning programming languages that have been well designed is helpful. I suggest Programming Erlang: Software for a Concurrent World and Elixir in Action .

u/-w1n5t0nin r/Clojure • Mentions

On “Learning Clojure for a different perspective on programming ”

+1 for SICP (including the lecture series on YouTube), but also to add that it can be worth following even if you don't take the exercises too seriously. Keep in mind that the course was created for and delivered to an engineering-focused class, so some of the examples and exercises can be focused on things that would be more relevant to an engineer and that may not be so useful or interesting for you; it's perfectly fine to skip those! The text itself can be more than enough, and it's written very clearly and with many interesting examples already. Of course, many of the exercises are great practice and you should definitely do them if you like them. That being said, Clojure is much more…

bluedayson Hacker News • Mentions

On “A curated list of Computer Engineering resources”

It’s funny you should ask that as I was just watching a lecture by Harold Abelson in which he addresses this exact question. link to this video In case you don’t have the time or inclination to watch the video it can basically be summarized by saying the following. When the Egyptians first discovered geometry it was considered crop science as it’s primary application was for determining crop yields and when to plant and harvest. In the same way now that computers science is applied to computers today. But just like Geometry is really about farming, computer science is not really about computers. Professor Abelson goes on to explain that computer science provides a means to determine proofs for abstract…

arexxbifson Hacker News • Mentions

On “Tribes of Programming (2017)”

Don't know if the "joke" originated with Abelson and Sussman but here's Hal Abelson talking about it: link to this video "It's not about computers in the same sense that physics is not really about particle accelerators." I sort of agree, but I guess it depends on what we mean about computer science being about computers. We can do things now that were downright impossible when A&S recorded their Lisp lectures simply because we can think differently about what's reasonable with regards to time and space complexity. And, of course, Abelson himself jokes about everyone wanting a faster computer in a later lecture. Perhaps we're simply confusing CS with software development, which I suppose could be liken…

soegaardon Hacker News • Mentions

On ““Computer science is not about computers””

The beginning of this lecture (30 seconds in) by Harold Abelson (author of SICP - Structure and Interpretation of Computer Programs) explains why Computer Science is a terrible name here. link to this video Not sure about the year.

SquishyPanda23on Hacker News • Mentions

On “Turing Oversold?”

> Turing Machines, on the other hand, were instantly obviously mechanizable. It was clear that one could build a physical machine to run any Turing program without human input. Harold Abelson points out in one of his lectures 0 that computer science isn't about computers any more than biology is about microscopes. From that perspective, it is clear that Turing found an existing discipline of computer science and made major contributions to it. But it doesn't really seem right to say that he invented or founded computer science. 0 link to this video