Code: | CC4013 | Acronym: | CC4013 | Level: | 400 |
Keywords | |
---|---|
Classification | Keyword |
OFICIAL | Computer Science |
Active? | Yes |
Responsible unit: | Department of Computer Science |
Course/CS Responsible: | Master in Computer Science |
Acronym | No. of Students | Study Plan | Curricular Years | Credits UCN | Credits ECTS | Contact hours | Total Time |
---|---|---|---|---|---|---|---|
M:CC | 13 | Study plan since 2014/2015 | 1 | - | 6 | 42 | 162 |
Study of semantic formal models of programming language, in order to provide a deep understanding of the mechanisms behind programming language definition, design, and implementation.
The students will acquire knowledge about semantic formal models of programming language. This course should develop the techniques and mechanisms behind programming language definition, design, and implementation. The students should be able to reason about the meaning of programs in a formal sense.
Operational semantics of programming languages.
Induction.
Lambda-calculus: sintax, reductions and encodings.
Domain theory: Complete partial orders (CPOs). Continuous functions. The fix-point theorem.
Denotational semantics. Relation between denotational and operational semantics.
Semantics of functional programming languages. Semantics of the lambda-calculus.
Type systems: the simple type system; parametric polymorphism.
Semantics for languages based on concurrency. Nondeterminism and parallelism.
Lectures with exposition of the elements in the syllabus.
designation | Weight (%) |
---|---|
Teste | 100,00 |
Total: | 100,00 |
designation | Time (hours) |
---|---|
Estudo autónomo | 120,00 |
Frequência das aulas | 42,00 |
Total: | 162,00 |
No frequency criteria.
There are two tests, each with a minimum score of 6 out of 20. The final grade is the arithmetic average of the test scores.
Final grade = 0.5 * Test 1 + 0.5 * Test 2
Anyone who does not reach the minimum grade in one of the tests does not pass, but can do an extra exam to be evaluated to both tests or just one of them.