UP | HOME
a_software.gif
tercer_nivel_software.gif

UPM / IMDEA Track in Software Development through Rigorous Methods

Types for programming languages

Coordinator(s)/Instructor(s)

Length

4 credits (ECTS)

Prerequisites

First-order logic. Good programming base in several languages.

This course has specific requirements, and if your initial level is not adequate, you may not pass. Therefore, we ask you to please include it in the mail you ought to send to graduate.school (at) software.imdea.org with the list of courses you want to take from the IMDEA track. You will receive a mail stating the courses in which you are welcome to enroll. If you enroll in an IMDEA Track course for which you did not receive explicit approval, you may be asked to switch over to a different one.

Course web page (if any)

Not yet available.

Summary and objectives

The course gives an “broad and deep” view of the most relevant type systems used in most modern programming languages, including object oriented ones, and also presents some advanced applications of types such as types for program analysis and “correct by construction” code development.

Topics

  1. Extensions of typed lambda calculi, polymorphism, recursion
  2. Reference types and exceptions
  3. Subtyping, coercions, and OO
  4. Constraint-based type inference
  5. Type-based program analysis
  6. Programming languages based on dependent types

Evaluation

Recommended reading

To be decided based on the background of the students.




Back to the initial page
Go to the IMDEA Software Institute page

Fractals are used with permission from their author Cory Ench | © 2006-2007. IMDEA Software.
All rights reserved | Legal Notice | Privacy Policy