COMPSCI61AS
Download as PDF
COMPSCI 61AS - The Structure and Interpretation of Computer Programs (Self-Paced)
Subject
COMPSCI
Course Number
61AS
Department
Course Level
Undergraduate
Course Title
The Structure and Interpretation of Computer Programs (Self-Paced)
Course Description
Introductory programming and computer science. Abstraction as means to control program complexity. Programming paradigms: functional, object-oriented, client/server, and declarative (logic). Control abstraction: recursion and higher order functions. Introduction to asymptotic analysis of algorithms. Data abstraction: abstract data types, type-tagged data, first class data types, sequences implemented as lists and as arrays, generic operators implemented with data-directed programming and with message passing. Implementation of object-oriented programming with closures over dispatch procedures. Introduction to interpreters and compilers. There are several significant programming projects. Course may be completed in one or two semesters. Students must complete a mimimum of two units during their first semester of 61AS.
Minimum
1
Maximum
4
Grading Basis
Default Letter Grade; P/NP Option
Method of Assessment
Written Exam
Instructors
Garcia, Harvey, Hilfinger
Prerequisites
Mathematics 1A (may be taken concurrently). Programming experience equivalent to that gained in 10 or the Advanced Placement Computer Science A course is recommended, but is not essential; students without this experience will begin at an earlier point in the online course.
Repeat Rules
Course may be repeated for a set number of units.
Credit Restriction Courses. Students will receive no credit for this course if following the course(s) have already been completed.
-
Formats
Laboratory
Term
Fall and Spring
Duration (in weeks)
15
Minimum Hours
6
Maximum Hours
6
Maximum Hours
6
Term
Summer
Duration (in weeks)
8
Minimum Hours
11
Maximum Hours
11
Maximum Hours
11.5
Term
Summer
Duration (in weeks)
6
Minimum Hours
15
Maximum Hours
15
Maximum Hours
15