Mixin Composition Synthesis based on Intersection Types

Research output: Contribution to journalJournal articlepeer-review

  • Jan Bessai
  • Tzu-Chun Chen
  • Andrej Dudenhefner
  • Düdder, Boris
  • Ugo de'Liguoro
  • Jacob Rehof

We present a method for synthesizing compositions of mixins using type inhabitation in intersection types. First, recursively defined classes and mixins, which are functions over classes, are expressed as terms in a lambda calculus with records. Intersection types with records and record-merge are used to assign meaningful types to these terms without resorting to recursive types. Second, typed terms are translated to a repository of typed combinators. We show a relation between record types with record-merge and intersection types with constructors. This relation is used to prove soundness and partial completeness of the translation with respect to mixin composition synthesis. Furthermore, we demonstrate how a translated repository and goal type can be used as input to an existing framework for composition synthesis in bounded combinatory logic via type inhabitation. The computed result is a class typed by the goal type and generated by a mixin composition applied to an existing class.

Original languageEnglish
Article number18
JournalLogical Methods in Computer Science
Volume14
Issue number1
ISSN1860-5974
DOIs
Publication statusPublished - 2018
Externally publishedYes

    Research areas

  • cs.LO, F.4.1

Links

ID: 210198263