Lightweight effects for Scala
Event details
Date | 29.08.2017 |
Hour | 13:00 › 15:00 |
Speaker | Fengyun Liu |
Location | |
Category | Conferences - Seminars |
EDIC candidacy exam
Exam president: Prof. Rachid Guerraoui
Thesis advisor: Prof. Martin Odersky
Co-examiner: Prof. Viktor Kuncak
Abstract
A common wisdom in the programming language
community is that mutable states and unrestricted side effects
make programs error-prone and incurs high maintenance cost,
while pure and effect-disciplined programs improves software
quality and reduces maintenance efforts.
Pure and effect-disciplined programs are only practical with
an effect system, which can track and check the usage of mutable
states, IO, files, network and etc. in the program at compile time.
Effect systems also enable more compiler optimisations and safer
parallel and distributed programming.
Ideas like monads, type-and-effect systems, algebraic effects
abound in research, but none of them gets popular in the industry,
due to their verbosity and complexity. Based on the idea effects
as capabilities and ideas from previous research, we believe we
can address the verbosity and complexity that are inherent in
effect systems, thus develop a practical effect system for Scala.
Background papers
Gentrification Gone Too Far? Affordable 2nd-Class Values for Fun and (Co-) Effect, by Leso Osvald et al., 2016.
Algebraic effects for Functional Programming, by Daan Leijen, 2016.
The marriage of effects and monads, by Philip Wadler et al., 2003
Practical information
- General public
- Free
Contact
- EDIC - [email protected]