COURSE DESCRIPTION

CSCI 320. Programming Languages

 

2000/2001 Catalogue Data

 

CSCI 320: Programming Languages. Credit: 4. Prerequisite: CSCI 202. Topics include formal language specification, data types and their implementation, abstract mechanisms, control structures, run-time representations and storage management. Several high-level languages will be examined. Three hours lecture and two hours activity laboratory. 

Textbook:

Sebesta, Robert W. Concepts of Programming Languages, 4nd Ed., Benjamin/Cummings. 

Reference: 

http://www.csci.csusb.edu/cs320 
http://www.csci.csusb.edu/rootproj

Coordinator: 

Richard Botting, Professor of Computer Science. 

Goals:

To provide a good understanding of the following: design considerations for high-level languages; comparison criteria for data structures and control-flow structures of a language; processing alternatives for differing data types; and hardware and language interrelationships. 

Prerequisite by Topic

Skills in Object Oriented Programming 

Topics

1. Evolution of the Major Programming Languages (2 hours)
2. Describing Syntax and Semantics (4 hours)
3. Primitive Data Types and variables (2 hours)
4. Data Types (2 hours)
5. Expressions and the Assignment Statement (2 hours)
6. Statement-Level Control Structures (2 hours)
7. Subprograms (2 hours)
8. Implementing Subprograms (2 hours)
9. Functional Programming Languages (3 hours)
10. Object-Oriented Programming Languages (3 hours)
11. Exceptions (2 hours)
12. Concurrency(2 hours)
13. Logic Programming Languages (3 hours)

Laboratory Projects

1. Prepare 10 www pages demonstrating elementary knowledge of BNF, HTML,UML, C++, LISP, Java , Prolog.
2. Design a new language and document using BNF and UML.

http://www.csci.csusb.edu/cs320/labs.html
 

Estimate CSAB Category Content

Computer Science Allocation
CORE

* Theoretical Foundations: 1
* Concepts of Programming Languages: 3

Total Credits

4 

Oral and Written Communication 

Every class session involves students written and anal work. Last two sessions student present OOA project work.

Social and Ethical Issues 

Students are reminded that cheating and copying will not be tolerated.

Theoretical Content 

A little grammar theory

Problem Analysis 

Project work stressing conceptual modelling

Solution Design 

Standard solutions to language and complier design problems.