Date: Wed 17 Mar
Time: 15.00
Place: Aula 214

Speaker: Dr. Davide Ancona
Title: A Primitive Calculus for Module Systems

Abstract. We present a simple and powerful calculus of modules supporting mutual recursion and higher order features. The calculus allows to encode a large variety of existing mechanisms for combining software components, including parameterized modules like ML functors, extension with overriding of object-oriented programming, mixin modules and extra-linguistic mechanisms like those provided by a linker. As usual, we first present an untyped version of our calculus and then a type system which is proved sound w.r.t. the reduction semantics. Finally, we show how the lambda-calculus and the object calculus of Abadi-Cardelli can be translated into our calculus.