Blogs (9) >>
Sun 30 October - Fri 4 November 2016 Amsterdam, Netherlands
Fri 4 Nov 2016 11:45 - 12:10 at Matterhorn 1 - Typing, in Practice Chair(s): Sebastian Erdweg

We present short programs that demonstrate the unsoundness of Java and Scala's current type systems. In particular, these programs provide parametrically polymorphic functions that can turn any type into any type without (down)casting. Fortunately, parametric polymorphism was not integrated into the Java Virtual Machine (JVM), so these examples do not demonstrate any unsoundness of the JVM. Nonetheless, we discuss broader implications of these findings on the field of programming languages.

Fri 4 Nov
Times are displayed in time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

10:30 - 12:10: Typing, in PracticeOOPSLA at Matterhorn 1
Chair(s): Sebastian ErdwegDelft University of Technology, Netherlands
10:30 - 10:55
A Practical Framework for Type Inference Error Explanation
Calvin LoncaricUniversity of Washington, Satish ChandraSamsung Research America, Manu SridharanSamsung Research America, Cole SchlesingerSamsung Research America
DOI Pre-print Media Attached
10:55 - 11:20
Dynamically Diagnosing Type Errors in Unsafe CodeAEC
Stephen KellUniversity of Cambridge
DOI Media Attached
11:20 - 11:45
First-Class Effect Reflection for Effect-Guided Programming
Yuheng LongIowa State University, Yu David Liu, Hridesh RajanIowa State University, USA
11:45 - 12:10
Java and Scala's Type Systems are Unsound: The Existential Crisis of Null PointersAEC
Nada AminEPFL, Ross TateCornell University
Link to publication DOI Pre-print