This course has its primary focus on the relational model for database organization. Topics include the relational data structure, relational algebra, normalization, integrity, recovery, concurrency and distributed databases. Offered alternate years. This course studies the design and implementation of modern programming languages, compilers and interpreters. Concepts of data representation, storage allocation, scope, code generation, lexical analysis and parsing of context-free grammars are examined.
Students design and implement a simple compiler.
Offered alternate years. This course focuses on the writing of programs that utilize operating system services in order to perform a task. Shell programming is also introduced. Students will write applications for both Windows and Unix platforms. Offered alternate years.