License
When quoting this document, please refer to the following
DOI: 10.4230/LIPIcs.ECOOP.2015.346
URN: urn:nbn:de:0030-drops-52213
URL: http://drops.dagstuhl.de/opus/volltexte/2015/5221/
Go to the corresponding LIPIcs Volume Portal


Long, Yuheng ; Liu, Yu David ; Rajan, Hridesh

Intensional Effect Polymorphism

pdf-format:
11.pdf (0.7 MB)


Abstract

Type-and-effect systems are a powerful tool for program construction and verification. We describe intensional effect polymorphism, a new foundation for effect systems that integrates static and dynamic effect checking. Our system allows the effect of polymorphic code to be intensionally inspected through a lightweight notion of dynamic typing. When coupled with parametric polymorphism, the powerful system utilizes runtime information to enable precise effect reasoning, while at the same time retains strong type safety guarantees. We build our ideas on top of an imperative core calculus with regions. The technical innovations of our design include a relational notion of effect checking, the use of bounded existential types to capture the subtle interactions between static typing and dynamic typing, and a differential alignment strategy to achieve efficiency in dynamic typing. We demonstrate the applications of intensional effect polymorphism in concurrent programming, security, graphical user interface access, and memoization.

BibTeX - Entry

@InProceedings{long_et_al:LIPIcs:2015:5221,
  author =	{Yuheng Long and Yu David Liu and Hridesh Rajan},
  title =	{{Intensional Effect Polymorphism}},
  booktitle =	{29th European Conference on Object-Oriented Programming (ECOOP 2015)},
  pages =	{346--370},
  series =	{Leibniz International Proceedings in Informatics (LIPIcs)},
  ISBN =	{978-3-939897-86-6},
  ISSN =	{1868-8969},
  year =	{2015},
  volume =	{37},
  editor =	{John Tang Boyland},
  publisher =	{Schloss Dagstuhl--Leibniz-Zentrum fuer Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{http://drops.dagstuhl.de/opus/volltexte/2015/5221},
  URN =		{urn:nbn:de:0030-drops-52213},
  doi =		{10.4230/LIPIcs.ECOOP.2015.346},
  annote =	{Keywords: intensional effect polymorphism, type system, hybrid typing}
}

Keywords: intensional effect polymorphism, type system, hybrid typing
Seminar: 29th European Conference on Object-Oriented Programming (ECOOP 2015)
Issue Date: 2015
Date of publication: 26.06.2015


DROPS-Home | Fulltext Search | Imprint Published by LZI