HackerTube
HomeLongsLikedHistoryWatch laterCategoriesPlaylistsSettings

Lecture 7A: Metacircular Evaluator, Part 1

MIT OpenCourseWare1 HN recommender · recommended in 1 month, 2020-2023
YouTube
32K views · 7 years ago · lecture · evergreen

Lecture 7A from MIT 6.001 (SICP) by Abelson and Sussman introduces the metacircular evaluator, a Scheme interpreter written in Scheme. It shows how evaluating a program is itself a program.

HN holds the SICP lectures up as joyful classics, and this lecture as the moment the evaluator is revealed.

Compilers, interpreters & program analysisFunctional programmingUniversity lectures & courses#sicp#scheme#interpreters#mit6.001#lisp

3 comments from Hacker News

@ufo2023 · in “Programming Language Inventor or Serial Killer?”

"We're getting really close to the spirit of the computer at this point, so I have to show a certain amount of reverence and respect" ▶ this video

CitesView on HN
@prezjordan2021 · in “Ink programming language”

I learned best in Scheme because you don't need to parse your input and can just evaluate a tree[0] (Parsing is, in my opinion, the most boring part about writing an interpreter!) Chapter 7 of Crafting Interpreters lays out how an evaluator works in a pretty clean way [1]. I've also blogged about evaluating ASTs in JavaScript [2] Lastly, Gary Bernhardt took it a step further and instead of "evaluating" code, "compiled" it to JavaScript (this tutorial uses Ruby) [3]. Very much a mind-blown moment for me. Have fun!! Writing interpreters remains one of my favorite things to do when learning a new programming language. [0] ▶ this video [1] link [2] link [3] link

CitesView on HN
@mrspeaker2020 · in “MIT 6.001 Structure and Interpretation (1986) [video]”

I re-watch this course every bunch of years, and every time I get something different from it. But mostly it just makes me happy - it's infectious and weird. Especially the "revelation" (spoiler!) ▶ this video

Strongly recommendsView on HN
Lecture 7A | MIT 6.001 Structure and Interpretation, 19861:24:38

Lecture 7A | MIT 6.001 Structure and Interpretation, 1986

MIT OpenCourseWare
35K views • 17 years ago
Lecture 1A: Overview and Introduction to Lisp1:12:56

Lecture 1A: Overview and Introduction to Lisp

MIT OpenCourseWare
420K views • 7 years ago
Lecture 1B | MIT 6.001 Structure and Interpretation, 198658:22

Lecture 1B | MIT 6.001 Structure and Interpretation, 1986

MIT OpenCourseWare
116K views • 17 years ago
Lecture 1A | MIT 6.001 Structure and Interpretation, 19861:12:56

Lecture 1A | MIT 6.001 Structure and Interpretation, 1986

MIT OpenCourseWare
995K views • 17 years ago
Brian Beckman: Don't fear the Monad1:07:10

Brian Beckman: Don't fear the Monad

jasonofthel33t
415K views • 13 years ago
William Byrd on "The Most Beautiful Program Ever Written" [PWL NYC]1:31:06

William Byrd on "The Most Beautiful Program Ever Written" [PWL NYC]

PapersWeLove
367K views • 9 years ago
Invited Talk - Guy Steele1:07:22

Invited Talk - Guy Steele

ClojureTV
39K views • 9 years ago
"Programming Should Eat Itself" by Nada Amin47:41

"Programming Should Eat Itself" by Nada Amin

Strange Loop Conference
43K views • 12 years ago
SICP: o fim de uma era7:10

SICP: o fim de uma era

Computação Raiz
34K views • 4 years ago
Practical Common Lisp1:12:10

Practical Common Lisp

Google TechTalks
98K views • 19 years ago
"Outperforming Imperative with Pure Functional Languages" by Richard Feldman34:55

"Outperforming Imperative with Pure Functional Languages" by Richard Feldman

Strange Loop Conference
98K views • 5 years ago
1. Introduction, Finite Automata, Regular Expressions1:00:34

1. Introduction, Finite Automata, Regular Expressions

MIT OpenCourseWare
626K views • 5 years ago
Saša Jurić - Parsing from first principles - WebCamp Zagreb 20191:10:16

Saša Jurić - Parsing from first principles - WebCamp Zagreb 2019

WebCamp Zagreb
6K views • 6 years ago
Clojure for Lisp Programmers Part 1 - Rich Hickey1:28:59

Clojure for Lisp Programmers Part 1 - Rich Hickey

ClojureTV
25K views • 13 years ago
The Simple Essence of Automatic Differentiation - Conal Elliott1:30:45

The Simple Essence of Automatic Differentiation - Conal Elliott

Microsoft Research
17K views • 8 years ago
Expert to Expert: Rich Hickey and Brian Beckman - Inside Clojure53:56

Expert to Expert: Rich Hickey and Brian Beckman - Inside Clojure

jasonofthel33t
119K views • 13 years ago
"Shen: A Sufficiently Advanced Lisp" by Aditya Siram40:20

"Shen: A Sufficiently Advanced Lisp" by Aditya Siram

Strange Loop Conference
26K views • 12 years ago
Escape from the Heap: Low-Level Programming in Common Lisp56:49

Escape from the Heap: Low-Level Programming in Common Lisp

Arthur Gleckler
17K views • 10 years ago
Parsing with Derivatives1:13:10

Parsing with Derivatives

Stanford
13K views • 15 years ago
The Functional Programmer's Toolkit - Scott Wlaschin1:05:51

The Functional Programmer's Toolkit - Scott Wlaschin

NDC Conferences
79K views • 7 years ago