# CS 61A - Spring 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_461113154)
- 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: 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. [Course Overview](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d), 51 min (Audio)
2. [Functional Programming - con't](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-2), 48 min (Audio)
3. [Higher Order Procedures](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-3), 51 min (Audio)
4. [Higher Order Procedures (con't)](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-4), 51 min (Audio)
5. [User Interface Design (Alan Kay Video - Part I)](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-5), 58 min (Audio)
6. [User Interface Design (Alan Kay Video - Part II)](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-6), 51 min (Audio)
7. [Recursion and Iteration](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-7), 47 min (Audio)
8. [Recursion and Iteration II](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-8), 44 min (Audio)
9. [Programming Methodology](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-9), 51 min (Audio)
10. [Programming Methodology II](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-10), 32 min (Audio)
11. [Shell Programming](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-11), 47 min (Audio)
12. [Data Abstraction](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-12), 49 min (Audio)
13. [Sequences](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-13), 49 min (Audio)
14. [Sequences II](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-14), 46 min (Audio)
15. [Hierarchical Data](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-15), 46 min (Audio)
16. [Hierarchical Data 2](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-16), 47 min (Audio)
17. [Interpreter](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-17), 49 min (Audio)
18. [Generic Operators](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-18), 48 min (Audio)
19. [Generic Operators 2](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-19), 52 min (Audio)
20. [Object-Oriented Programming 1](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-20), 50 min (Audio)
21. [Object-Oriented Programming 2](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-21), 50 min (Audio)
22. [Object-Oriented Programming 3](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-22), 51 min (Audio)
23. [Assignment, State](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-23), 52 min (Audio)
24. [Envioronments](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-24), 48 min (Audio)
25. [Envioronments - con't](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-25), 49 min (Audio)
26. [Mutable Data](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-26), 50 min (Audio)
27. [Vectors](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-27), 52 min (Audio)
28. [Vectors - con't](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-28), 50 min (Audio)
29. [Client/Server](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-29), 47 min (Audio)
30. [Client/Server - con't](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-30), 51 min (Audio)
31. [Concurrency](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-31), 49 min (Audio)
32. [Metacircular Evaluator](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-32), 51 min (Audio)
33. [Metacircular Evaluator - con't](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-33), 48 min (Audio)
34. [Analyzing Evaluator](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-34), 50 min (Audio)
35. [Streams](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-35), 51 min (Audio)
36. [Therac](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-36), 52 min (Audio)
37. [Therac - con't](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-37), 50 min (Audio)
38. [Lazy Eval.](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-38), 52 min (Audio)
39. [Nondeterministic Eval.](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-39), 52 min (Audio)
40. [Nondeterministic Eval. - con't](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-40), 48 min (Audio)
41. [Logic Programming](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-41), 50 min (Audio)
42. [Review](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-42), 50 min (Audio)
43. [Review 2](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-43), 40 min (Audio)
44. [Review 3](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113154/3d8d2b4b089d-44), 45 min (Audio)
