000227175 001__ 227175
000227175 005__ 20190416055557.0
000227175 0247_ $$2doi$$a10.1145/2983990.2984004
000227175 037__ $$aCONF
000227175 245__ $$aJava and Scala's Type Systems are Unsound: The Existential Crisis of Null Pointers
000227175 269__ $$a2015
000227175 260__ $$c2015
000227175 336__ $$aConference Papers
000227175 520__ $$aWe 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.
000227175 6531_ $$aUnsoundness
000227175 6531_ $$aJava
000227175 6531_ $$aScala
000227175 6531_ $$aNull
000227175 6531_ $$aExistential
000227175 700__ $$0246589$$g164625$$aAmin, Nada
000227175 700__ $$aTate, Ross
000227175 7112_ $$dNovember 02 - 04, 2016$$cAmsterdam, Netherlands$$aOOPSLA 2016
000227175 773__ $$tProceedings of the 2016 ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications
000227175 8564_ $$uhttps://infoscience.epfl.ch/record/227175/files/unsound-oopsla.pdf$$zPostprint$$s220114$$yPostprint
000227175 909C0 $$xU10409$$0252187$$pLAMP
000227175 909CO $$ooai:infoscience.tind.io:227175$$qGLOBAL_SET$$pconf$$pIC
000227175 917Z8 $$x164625
000227175 917Z8 $$x166927
000227175 937__ $$aEPFL-CONF-227175
000227175 973__ $$rREVIEWED$$sPUBLISHED$$aEPFL
000227175 980__ $$aCONF