Syllabus for |
|
TDA345 - Semantics of programming languages |
|
Owner: TDATA |
|
4,0 Credits (ECTS 6) |
Grading: TH - Five, Four, Three, Not passed |
Level: C |
Department: 37 - COMPUTER SCIENCE AND ENGINEERING
|
Teaching language: Swedish
Course module |
|
Credit distribution |
|
Examination dates |
Sp1 |
Sp2 |
Sp3 |
Sp4 |
|
No Sp |
0101 |
Examination |
4,0 c |
Grading: TH |
|
|
|
|
4,0 c
|
|
|
|
29 May 2007 pm V, |
Contact examiner |
0201 |
Laboratory |
0,0 c |
Grading: UG |
|
|
|
|
0,0 c
|
|
|
|
|
In programs
TDATA COMPUTER SCIENCE AND ENGINEERING - Computer Languages, Year 4 (elective)
TTFYA ENGINEERING PHYSICS, Year 4 (elective)
TM Teknisk matematik, Year 2 (elective)
TITEA SOFTWARE ENGINEERING, Year 4 (elective)
TITEA SOFTWARE ENGINEERING, Year 3 (elective)
DCMAS MSc PROGR IN DEPENDABLE COMPUTER SYSTEMS - Dependable Programming, Year 1
DCMAS MSc PROGR IN DEPENDABLE COMPUTER SYSTEMS - Dependable Architectures, Year 1 (elective)
Examiner:
Professor
David Sands
Eligibility:
For single subject courses within Chalmers programmes the same eligibility requirements apply, as to the programme(s) that the course is part of.
Course specific prerequisites
The courses Programming Languages and Concurrent programmering or similar courses
Aim
The aim of the course is to understand how a programming languages semantics (meaning) can be described formally. In the course studies how the semantics of various programming language features can be formulated. The theoretical skills are exercised through the implementation of an interpreter from formal semantic definitions.
The course introduces several important theoretical concepts that are used in computer science research. As well as a course for those interested in research, the course is valuable for all who are interested in the design and implementation of programming languages of various forms.
Content
The main focus of the course is the operational approach to describing the semantics of programming languages, including abstract machines, transition semantics and evaluation semantics, together with induction principles for reasoning about computation, semantic equivalence and the relation between different forms of semantic definition. The concepts will be illustrated using langage features including: local state, control operators, functional programming, threads and message passing, and object oriented byte code.
Organisation
Lectures, programming assignments and hand-in exercises.
Literature
The current course literature is given on the course home page before the start of the course.
Examination
The course concludes with a written exam. To pass the course one must pass the exam, the laborations and the hand-in exercises.
Grading scale: U, 3, 4, 5