Timetable
Consultation
Bernd
Wednesdays, 11am to 1pm,
CL(75)148,
bernd.meyer@infotech.monash.edu.au
ph 990 - 52240
Maria
to be announced,
CL(75)151,
Maria.GarciadelaBanda@csse.monash.edu.au
ph 990 - 55777
The subject takes a practical hands-on approach to programming language semantics where students can explore the concepts through the use of high-level tools based using semantic specification. Main topics are: Distinguishing syntax from semantics. Concrete and abstract syntax. Syntax as a basis for semantics. Outline of the main approaches for giving meaning to programming languages. Fundamental concepts of programming languages and their relation to design decisions. Examples of formal semantic specification for real-world programming languages. Semantic analysis of programming languages. Implementation of programming languages with high-level tools.
Proficiency in at least one programming language, knowledge of alternative programming paradigms, such as functional programming (as for example given in CSE3322). , logic programming (as for example given in CSE2393) or concurrent programming paradigms (as for example given in CSE4333). While any knowledge of alternative programming paradigms is advantegous, basic knowledge of functional programming (as given in CSE3322) is particularly important.
A solid understanding of recursion. At least 12 points of Computer Science-oriented mathematics (for example, MAT1841+MAT1830 or MAT1811+1812). Fundamentals of first-order predicate logic (for example from CSE2303). Understanding of the notion of a proof, induction.
This page contains resources for CSE5340 and will be permanently evolving during
the semester.