Multitier programming languages address the complexity of developing distributed systems abstracting over low level implementation details such as data representation, serialization and network protocols. Since the functionalities of different peers can be defined in the same compilation unit, multitier languages do not force developers to modularize software along network boundaries. Unfortunately, combining the code for all tiers into the same compilation unit poses a scalability challenge or forces developers to resort to traditional modularization abstractions that are agnostic to the multitier nature of the language.
In this paper, we address this issue with a module system for multitier languages. Our module system supports encapsulating each (cross-peer) functionality and defining it over abstract peer types. As a result, we disentangle modularization and distribution and we enable the definition of a distributed system as a composition of multitier modules, each representing a subsystem. Our case studies on distributed algorithms, distributed data structures, as well as on the Apache Flink task distribution system, show that multitier modules allow the definition of reusable (abstract) patterns of interaction in distributed software and enable separating the modularization and distribution concerns, properly separating functionalities in distributed systems.
Wed 17 Jul
|10:30 - 10:50|
Shawn MeierUniversity of Colorado, Boulder, Sergio MoverEcole Polytechnique, Bor-Yuh Evan ChangUniversity of Colorado BoulderDOI
|10:50 - 11:10|
Kiko Fernandez-ReyesUppsala University, Einar Broch JohnsenUniversity of Oslo, Dave ClarkeUppsala Univ. Sweden and KU Leuvern, Ludovic HenrioCNRS, Tobias WrigstadUppsala UniversityDOI
|11:10 - 11:30|
Towards Language-Parametric Semantic Editor Services based on Declarative Type System Specifications
Daniel PelsmaekerDelft University of Technology, Netherlands, Hendrik van AntwerpenTU Delft, Eelco VisserDelft University of TechnologyDOI
|11:30 - 11:50|
|11:50 - 12:10|
Vlad VerguTU Delft, Eelco VisserDelft University of Technology, Andrew TolmachPortland State UniversityDOI