Algebraic Subtyping (2016) [pdf]
From just skimming the intro, this seems like very exciting work. And the formulation of the problem in terms of data flow was really novel to me.<p>I was surprised that I couldn't find any references to Martin Odersky in the paper, whose work for years at EPFL has been focused on unifying functional and object oriented programming under a sound type system. This work produced the Scala programming language. More recently, he reworked the foundations of Scala using a system he developed called the calculus of dependent object types (DOT) [1]. I couldn't seem to find any references to this in the thesis. It's hard to imagine the author was unaware of this work, but I'm really interested in hearing more about how the two approaches compare.<p>Anyway, I'm imagining this work could have great applications for things like TypeScript, and maybe even Scala.<p>[1] <a href="http://scala-lang.org/blog/2016/02/03/essence-of-scala.html" rel="nofollow">http://scala-lang.org/blog/2016/02/03/essence-of-scala.html</a>