CSE 6341
Transcript Abbreviation:
Fndns Prog Langs
Course Description:
Conceptual foundations of programming languages: attribute grammars; types; functional languages; language semantics; abstract interpretation.
Course Levels:
Graduate
Designation:
Elective
General Education Course:
(N/A)
Cross-Listings:
(N/A)
Credit Hours (Minimum if “Range”selected):
3.00
Max Credit Hours:
3.00
Select if Repeatable:
Off
Maximum Repeatable Credits:
(N/A)
Total Completions Allowed:
(N/A)
Allow Multiple Enrollments in Term:
No
Course Length:
14 weeks (autumn or spring)
12 weeks (summer only)
Off Campus:
Never
Campus Location:
Columbus
Instruction Modes:
In Person (75-100% campus; 0-24% online)
Prerequisites and Co-requisites:
Prereq: 3341 (655) or 5341.
Electronically Enforced:
No
Exclusions:
Not open to students with credit for 755.
Course Goals / Objectives:
Master using attribute grammars to specify context-sensitive conditions related to standard imperative language constructs
Master using attribute grammars to specify code generation for standard imperative language constructs
Be competent with principles of functional languages and techniques for their implementations
Be competent with analyzing types in functional, imperative, and object-oriented languages
Be competent with analyzing the formal semantics of imperative languages
Be familiar with abstract interpretation and its application to derive approximate semantics of programs
Check if concurrence sought:
No
Contact Hours:
Topic | LEC | REC | LAB | LAB Inst |
---|---|---|---|---|
Attribute grammars; using AGs to define context-sensitive syntax of languages; | 6.0 | 0.0 | 0.0 | 0 |
Using AGs to define translational semantics of imperative languages; | 3.0 | 0.0 | 0.0 | 0 |
Functional languages: typed and untyped (Lambda calculus, Lisp, ...); implementations of functional languages including memory management; meta-circular interpreters; | 12.0 | 0.0 | 0.0 | 0 |
Types in programming languages: Type systems, type checking, type inference/ reconstruction, recursive types, subtypes, higher-order types; dynamically typed languages; implementation issues; | 9.0 | 0.0 | 0.0 | 0 |
Formal semantics of programming languages: structured operational semantics; denotational semantics; abstract interpretation and static analysis; | 9.0 | 0.0 | 0.0 | 0 |
Exams, review; | 3.0 | 0.0 | 0.0 | 0 |
Total | 42 | 0 | 0 | 0 |
Grading Plan:
Letter Grade
Course Components:
Lecture
Grade Roster Component:
Lecture
Credit by Exam (EM):
No
Grades Breakdown:
Aspect | Percent |
---|---|
Homeworks | 20% |
Programming projects | 35% |
Midterms, Finals | 45% |
Representative Textbooks and Other Course Materials:
Title | Author | Year |
---|---|---|
Types and programming languages | B. Pierce |
ABET-CAC Criterion 3 Outcomes:
(N/A)
ABET-ETAC Criterion 3 Outcomes:
(N/A)
ABET-EAC Criterion 3 Outcomes:
(N/A)
Embedded Literacies Info:
Attachments:
(N/A)
Additional Notes or Comments:
(N/A)
Basic Course Overview:
CSE_6341_basic.pdf
(10.23 KB)