# CS 61A - Fall 2007

- Institution: University of California, Berkeley
- Teacher: Brian Harvey
- Year: 2007
- Level: Undergraduate
- Language: English
- Subjects: Computer science
- Source: [Internet Archive](https://archive.org/details/ucberkeley_webcast_itunesu_461112941)
- Licence: none stated by the source
- Who can watch: Tweens profiles and older (sources give no ratings; placed by Invisible Network from the source's own words)

CS 61A - Fall 2007 - The Structure and Interpretation of Computer Programs - Spring 2007. Introduction to programming and computer science. This course exposes students to techniques of abstraction at several levels: (a) within a programming language, using higher-order functions, manifest types, data-directed programming, and message-passing; (b) between programming languages, using functional and rule-based languages as examples. It also relates these techniques to the practical problems of implementation of languages and algorithms on a von Neumann machine. There are several significant programming projects, programmed in a dialect of the LISP language. Video of lectures available at webcast.berkeley.edu/courses.The Structure and Interpretation of Computer Programs - Spring 2007. Introduction to programming and computer science. This course exposes students to techniques of abstraction at several levels: (a) within a programming language, using higher-order functions, manifest types, data-directed programming, and message-passing; (b) between programming languages, using functional and rule-based languages as examples. It also relates these techniques to the practical problems of implementation of languages and algorithms on a von Neumann machine. There are several significant programming projects, programmed in a dialect of the LISP language. Video of lectures available at webcast.berkeley.edu/courses.

The Structure and Interpretation of Computer Programs

## Lectures

1. [Functional Programming 1](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f), 49 min (Audio)
2. [Functional Programming 2](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-2), 51 min (Audio)
3. [Higher-Order Procedures 1](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-3), 51 min (Audio)
4. [Higher-Order Procedures 2](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-4), 50 min (Audio)
5. [User Interface - Alan Kay 1](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-5), 49 min (Audio)
6. [User Interface - Alan Kay 2](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-6), 51 min (Audio)
7. [Orders of Growth](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-7), 52 min (Audio)
8. [Recursion and Iteration](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-8), 52 min (Audio)
9. [Data Abstraction](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-9), 52 min (Audio)
10. [Sequences](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-10), 50 min (Audio)
11. [Mapreduce](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-11), 52 min (Audio)
12. [Example - Calculator](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-12), 50 min (Audio)
13. [Hierarchical Data 1](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-13), 51 min (Audio)
14. [Hierarchical Data 2](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-14), 49 min (Audio)
15. [Scheme-1 Interpreter](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-15), 51 min (Audio)
16. [Generic Operators 1](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-16), 51 min (Audio)
17. [Generic Operators 2](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-17), 50 min (Audio)
18. [Object-Oriented Programming 1](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-18), 52 min (Audio)
19. [Object-Oriented Programming 2](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-19), 51 min (Audio)
20. [Object-Oriented Programming 3](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-20), 50 min (Audio)
21. [Assignment and State](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-21), 51 min (Audio)
22. [Environments 1](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-22), 50 min (Audio)
23. [Environments 2](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-23), 51 min (Audio)
24. [Mutable Data 1](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-24), 51 min (Audio)
25. [Mutable Data 2](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-25), 51 min (Audio)
26. [Vectors](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-26), 51 min (Audio)
27. [Client/Server Programming](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-27), 50 min (Audio)
28. [Concurrency 1](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-28), 51 min (Audio)
29. [Concurrency 2](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-29), 37 min (Audio)
30. [Streams 1](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-30), 51 min (Audio)
31. [Streams 2](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-31), 48 min (Audio)
32. [Metacircular Evaluator](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-32), 51 min (Audio)
33. [Metacircular Evaluator, Logo](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-33), 51 min (Audio)
34. [Therac-25](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-34), 50 min (Audio)
35. [Mapreduce 2](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-35), 46 min (Audio)
36. [Analyzing Evaluator](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-36), 49 min (Audio)
37. [Lazy Evaluator](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-37), 47 min (Audio)
38. [Nondeterministic Eval. 1](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-38), 51 min (Audio)
39. [Nondeterministic Eval. 2](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-39), 51 min (Audio)
40. [Logic Programming 1](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-40), 50 min (Audio)
41. [Logic Programming 2](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-41), 51 min (Audio)
42. [Review](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-42), 51 min (Audio)
43. [Review 2](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461112941/253491f24e1f-43), 32 min (Audio)
