Grinnell's introductory computer science sequence follows a multi-paradigm approach, emphasizing three fundamental approaches to problem solving, and supported by three contrasting programming languages. Each course in this three-course introductory sequence has been identified as an innovative and effective "Course Exemplar" in Computer Science Curricula 2013 (CS2013) by the ACM/IEEE-CS Joint Task Force on Computing Curricula.
The following table highlights additional perspectives for these three courses.
| Course Number | CSC 151 | CSC 161 | CSC 207 |
|---|---|---|---|
| Title | Functional Problem Solving | Imperative Problem Solving and Memory Management | Object-Oriented Problem Solving, Data Structures, and Algorithms |
| View of Problem Solving | Functional Problem Solving | Imperative Problem Solving | Object-oriented Problem Solving |
| Supporting Language | Scheme | C | Java |
| Application Themes | Data science | Robots | Large-scale software development: Memory and time effectiveness |
| Level of Abstraction | High level | Low-moderate level | High level |
| Memory Allocation |
|
|
|
| Number Processing |
|
|
|
| Primary Built-in Data Structures |
|
|
|
| Additional Language Characteristics |
|
|
|
This document is available on the World Wide Web as
http://www.walker.cs.grinnell.edu/intro-cs-sequence.html
|
created 16 January 2013 updated 18 January 2013, 15 January 2014 updated 20 January 2018, 26 August 2018 |
|
| For more information, please contact Henry M. Walker at walker@cs.grinnell.edu. |
|
Copyright © 2011-2015
by Henry M. Walker.
|