CS 3200/5200N: Organization of Programming Languages
Time and Location: Tue, Thu 12:00pm – 1:20pm, WALT 245
Instructor: Razvan Bunescu
Office: Stocker 341
Office Hours: Tue, Thu 10:30 – 11:30am, or by email appointment
Email: bunescu @ ohio edu
Teaching Assistant: Sadegh Mirshekarian (sm774113 @ ohio edu)
Office: Stocker 285
Office Hours: Mon, Wed 9:00 – 10:30am, or by email appointment
Programming Language Pragmatics (3rd edition) by Michael L. Scott. Elsevier/Morgan Kaufmann, 2009.
Recommended Supplementary Text:
Compilers: Principles, Techniques, & Tools (2nd edition) by Aho, Lam, Sethi, and Ullman. Addison-Wesley, 2007.
CS 2650 and (CS 3000 or MATH 3050) and C or better in CS 2401
This course introduces the fundamental syntactic and semantic concepts underlying modern programming languages. The imperative, functional and logic programming paradigms will be discussed, with illustrative examples in C/C++, Java, Ada, Scheme, Python, and Prolog.
Major topics include:
Context Free Grammars, Lexical Analysis and Syntactic Parsing.
Bindings, Type Checking and Scopes.
Expressions, Control Structures and Functions.
- ANSI C: