A survey of the principles and paradigms of programming languages. Topics include data types, scope and run-time storage, control structures, syntax, semantics, translation, and implementation. Paradigms discussed include: procedural, functional, logic, and object-oriented programming.
Prerequisite(s): Grade of "C" or better in CMPSC 140 Data Structures.
(Normally offered alternate years.)
A natural continuation of Computer Science 40 concentrating on the motivation, design, implementation, and utilization of abstract data types. Topics include linked lists, stacks, queues, trees, and recursion. A lab component is incorporated.
Prerequisite(s): Grade of "C" or better in CMPSC 040 Program Design.
(Normally offered each spring semester.)