Languages and compilers - LINGUAGGI (2016/2017)

Course code
4S02726
Name of lecturer
Roberto Giacobazzi
Number of ECTS credits allocated
6
Academic sector
INF/01 - INFORMATICS
Language of instruction
Italian
Location
VERONA
Period
I sem. dal Oct 3, 2016 al Jan 31, 2017.
Web page
http://profs.scienze.univr.it/~giaco/styled-16/index.html

To show the organization of the course that includes this module, follow this link * Course organization

Lesson timetable

Learning outcomes

The goal of the course is to introduce the main concepts and ideas of programming languages through the design and implementation of an interpreter in a functional programming language like OCAML. AT the end of the course the students will know how an interpreter (denotational or operational or iterative) can be designed and implemented for a arbitrary programming language with functional and imperative and object oriented features.

Syllabus

Course introduction, Mathematical background, Abstract machines, Operational semantics, Denotational semantics, OCAML Programming language, Data types, Expressions, blocks, functions and procedures, Classes and Objects. Parameter passing, Memory structure and handling.

Assessment methods and criteria

The exam consists in the development and implementation of one of the projects proposed during the course. Groups of max 3 students can develop the project, producing as result a document 9possibly in english) with all the specifications, the implementation choices and an extensive testing phase.

STUDENT MODULE EVALUATION - 2016/2017