Programming Languages, Compilers

Image Of Jeff HuangJeff Huang

Assistant Professor

(Concurrent Software, Software Verification, Software Safety and Reliability)


Image of Lawrence RauschwergerLawrence Rauchwerger

Eppright Professor

(Compilers for parallel and distributed computing, parallel and distributed C++ libraries, adaptive runtime optimizations, architectures for parallel computing)


Courses Offered

CSCE 605. Compiler Design. Credits 3. 3 Lecture Hours

Advanced topics in compiler writing; parser generators and compiler-compilers; dynamic storage and scope resolution; data flow analysis and code optimization.  

Prerequisite: CSCE 434.

CSCE 621. Language, Library and Program Design Using C++. Credits 3. 3 Lecture Hours

Exploration of the interactions among language design, library design, and program design in the context of ISO standard C++ and its proposed extensions; Novel features provided by C++ and the design and programming techniques supported. 

Prerequisite: Graduate classification or approval of instructor; understanding of C++ and experience with software development projects helpful; knowledge of at least one programming language in addition to C and C++.

CSCE 622. Generic Programming. Credits 3. 3 Lecture Hours

The generic programming approach to design and systematic classification of software components, techniques for achieving correctness, efficiency, and generality of algorithms, data structures, and memory management, methods of structuring a library of generic software components for maximum usability are practiced in a significant design and implementation project.  

Prerequisite: CSCE 221.