# CS 61A - Spring 2008

- Institution: University of California, Berkeley
- Teacher: Brian Harvey
- Year: 2008
- Level: Undergraduate
- Language: English
- Subjects: Computer science
- Source: [Internet Archive](https://archive.org/details/ucberkeley_webcast_itunesu_461113546)
- 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 - Spring 08 - 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.

The Structure and Interpretation of Computer Programs

## Lectures

1. [Functional Programing](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea), 52 min (Audio)
2. [Functional Programing - cont](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-2), 51 min (Audio)
3. [Functions of Functions](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-3), 50 min (Audio)
4. [Higher-Order Procedures](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-4), 43 min (Audio)
5. [Higher-Order Procedures, UI (Kay)](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-5), 50 min (Audio)
6. [UI, Recursion and Iteration (Kay) I](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-6), 52 min (Audio)
7. [Recursion and Iteration II](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-7), 51 min (Audio)
8. [UI Recursion and Iteration III](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-8), 47 min (Audio)
9. [Data Abstraction, Sequences Calculator 1](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-9), 51 min (Audio)
10. [Data Abstraction, Sequences Calculator II](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-10), 49 min (Audio)
11. [Data Abstraction, Sequences Calculator III](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-11), 49 min (Audio)
12. [Hierarchical Data I](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-12), 51 min (Audio)
13. [Hierarchical Data II](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-13), 49 min (Audio)
14. [Interpreter](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-14), 52 min (Audio)
15. [Generic Operators I](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-15), 51 min (Audio)
16. [Generic Operators II](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-16), 48 min (Audio)
17. [Object-Oriented Programming 1](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-17), 52 min (Audio)
18. [Object-Oriented Programming II](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-18), 52 min (Audio)
19. [Object-Oriented Programming III](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-19), 43 min (Audio)
20. [Assignment, State, Environments 1](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-20), 52 min (Audio)
21. [Assignment, State, Environments II](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-21), 50 min (Audio)
22. [Assignment, State, Environments III](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-22), 49 min (Audio)
23. [Mutable Data](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-23), 59 min (Audio)
24. [Vectors I](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-24), 52 min (Audio)
25. [Vectors II](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-25), 48 min (Audio)
26. [Client Server](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-26), 53 min (Audio)
27. [Concurrency I](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-27), 49 min (Audio)
28. [Concurrency II](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-28), 43 min (Audio)
29. [Streams](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-29), 52 min (Audio)
30. [Shell Programming I](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-30), 47 min (Audio)
31. [Shell Programming II](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-31), 45 min (Audio)
32. [Metacircular Evaluation I](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-32), 51 min (Audio)
33. [Metacircular Evaluation II](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-33), 51 min (Audio)
34. [Mapreduce I](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-34), 49 min (Audio)
35. [Mapreduce II](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-35), 50 min (Audio)
36. [Analyzing Eval](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-36), 51 min (Audio)
37. [Therac](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-37), 51 min (Audio)
38. [Lazy Evaluation I](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-38), 49 min (Audio)
39. [Lazy Evaluation II](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-39), 53 min (Audio)
40. [Nondeterministic Evaluation](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-40), 45 min (Audio)
41. [Logic Programming I](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-41), 51 min (Audio)
42. [Logic Programming II](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-42), 50 min (Audio)
43. [Review I](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-43), 32 min (Audio)
44. [Review II](https://invisiblenetwork.ai/learn/ia/ucberkeley_webcast_itunesu_461113546/ad103a3309ea-44), 48 min (Audio)
