This subject provides the formal background needed to reason about software and programming languages in a precise and mathematically sound way.
It covers the fundamental concepts underlying programming language design, definition and execution mechanisms, including recursion, syntax, various forms of semantics, and type systems.
Apart from the theoretical contents, this subject may include short programming assignments for students to gain a more instrumental level of the ideas mentioned above.
The final grade will be calculated from:
All the exercises for each unit will account for the same relative weight in the overall grade, although individual exercises in a given unit may have different weights.
|SSC3||Application of relevant research methods to open problems in the field of software engineering related to both the particular features of software and software development management||S|
|Code||Learning Outcome||Associated competences||Proficiency level|
|RA-IS-4||Analyse groundbreaking research aimed at remedying the weaknesses in project requirements and design activities carried out using non-classical methodologies||SSC3||S|
Subject learning guide for Foundations and Programming Languages