Hide Advanced Options
Courses - Spring 2024
CMSC
Computer Science Department Site
CMSC838L
Advanced Topics in Programming Languages; Programming Languages and Computer Architecture
Credits: 3
Grad Meth: Reg, Aud
Prerequisites: Successful completion of a compiler course (CMSC430 or equivalent) and a computer organization/architecture (CMSC 411 or equivalent) is strongly recommended. Exploration of the interplay between computer architecture and programming languages, with a focus on applying PL formalisms and techniques to emerging computer architecture research. The course is structured into three parts: 1) Topics in various non-traditional computer architectures and computing paradigms (including dataflow processing, intermittent computing, persistent memory, reconfigurable architectures,etc.); 2) Programming languages *for* computer architecture (including design of hardware description languages and high-level synthesis languages, etc.); 3) Problems of end-to-end correctness guarantees (including verified and secure compilation, full-stack correctness proofs, etc.)