Considers concepts common to a variety of programming languages--how they are described (both formally and informally) and how they are implemented. Provides a firm basis for comprehending new languages and gives insight into the relationship between languages and machines. Same as CSCI 5535. Prerequisites: Requires prerequisite course CSCI 3155 (minimum grade D-).