Artículo de revista
Customizable Gradual Polymorphic Effects for Scala
Fecha
2015Registro en:
ACM Sigplan Noticies Volumen: 50 Número: 10 Páginas: 935-953 Oct 2015
DOI: 10.1145/2814270.2814315
Autor
Toro, Matías
Tanter, Éric Pierre
Institución
Resumen
Despite their obvious advantages in terms of static reasoning, the adoption of effect systems is still rather limited in practice. Recent advances such as generic effect systems, lightweight effect polymorphism, and gradual effect checking, all represent promising steps towards making effect systems suitable for widespread use. However, no existing system combines these approaches: the theory of gradual polymorphic effects has not been developed, and there are no implementations of gradual effect checking. In addition, a limiting factor in the adoption of effect systems is their unsuitability for localized and customized effect disciplines. This paper addresses these issues by presenting the first implementation of gradual effect checking, for Scala, which supports both effect polymorphism and a domain-specific language called Effscript to declaratively define and customize effect disciplines. We report on the theory, implementation, and practical application of the system.