Programming Languages
Lecture, four hours; laboratory, two hours; outside study, six hours. Enforced requisites: courses 33, 35L. Basic concepts in design and use of programming languages, including abstraction, modularity, control mechanisms, types, declarations, syntax, and semantics. Study of several different language paradigms, including functional, object-oriented, and logic programming. Letter grading.
Review Summary
- Clarity
-
10.0 / 10
- Organization
-
10.0 / 10
- Time
-
0-5 hrs/week
- Overall
-
10.0 / 10
Reviews
Nachenberg's lectures are incredibly engaging!
Everybody loves Carey, and for very, very good reason.
- He's an amazing lecturer who genuinely cares about his students. He offers prizes to incentivize participation, and he has really iconic and funny slides that go over the material super well.
- You learn a lot in this class, including the intricacies of Python, Prolog, and Haskell, as well as the way programming languages work, like variable passing, lambda functions, garbage collection, and more. Although Eggert's version probably has a greater depth (since Eggert goes over Ocaml), Carey makes the material super understandable and interesting.
- His tests are extremely fair. Not too easy, but not too difficult either. You get adequate time to answer all questions, which are all FRQs. Some ask you to explain things, while others ask you to write code.
- The projects are super fun. You get to build an interpreter for a made-up language throughout the quarter. You get about two weeks for each project. Each project builds off the other, but don't worry if your implementation is bad, as they provide starters for each segment of the project. Projects are also autograded, so you can resubmit as many times as you want.
- Homeworks are graded on completion. In addition, they have optional questions, so you don't have to do every single question. They're good exam prep.
- You don't get egged in CS 131.
This was a very difficult class, and I struggled a lot with it. Carey is a good professor, but there didn't seem to be any sort of curve.
Showing 21 to 23 of 23 reviews
Course
Grading Information
-
No group projects
-
Attendance not required
-
1 midterm
-
Finals week final
-
30% recommend the textbook
Previous Grades
Grade distributions not available.