Modularity 2016
Mon 14 - Thu 17 March 2016 Spain
Tue 15 Mar 2016 14:05 - 14:40 at LaMOD - LaMOD Workshop Session 1 Chair(s): David H. Lorenz

Data types a la carte (DTC) is a technique to modularly add new variants to data types. A drawback of DTC compared to simple variant types,which is the common way to define data types in functional programming language, is runtime inefficiency in destruction of these values. In this paper we propose a lightweight optimization technique for functions that destruct the values of DTC data types. It makes run as efficiently as their non-DTC counterparts by just (1) deriving non-extensible algebraic datatypes isomorphic to extensible data types defined in DTC fashion (2) using them within the type annotations that specify concrete data types using the composition operator given in DTC. The approach is based on our insight on the functions: they never depend on any concrete data types but merely constrain them. We implement functions that take an extensible data type defined in DTC fashion and derive an isomorphic non-extensible algebraic data type using Template Haskell. Our experimental results show that using our approach DTC functions run as efficient as their non-DTC counterparts and avoid performance slowdown even if the data types are extended multiple times.

Tue 15 Mar

Displayed time zone: Belfast change

14:00 - 15:00
LaMOD Workshop Session 1LaMOD at LaMOD
Chair(s): David H. Lorenz Open University and Technion IIT
Day opening
Workshop Introduction
David H. Lorenz Open University and Technion IIT, Jacques Noyé École des Mines de Nantes, France, Raffi Khatchadourian Hunter College, City University of New York
A Lightweight Optimization Technique for Data Types à la Carte
Hirotada Kiriyama Tokyo Institute of Technology, Tomoyuki Aotani Tokyo Institute of Technology, Japan, Hidehiko Masuhara Tokyo Institute of Technology
Multi-level Debugging for Interpreter Developers
Bastian Kruck Hasso Plattner Institute, Potsdam, Stefan Lehmann Hasso-Plattner-Institute, Potsdam, Christoph Kessler Hasso Plattner Institute, Potsdam, Jakob Reschke , Tim Felgentreff HPI, Germany, Jens Lincke Hasso Plattner Institute, Robert Hirschfeld HPI
DOI Pre-print Media Attached