Blog
Thoughts on research, complex software systems, and other things.
Penn PL Club Homework: Making the Browser Reasonable for Sane Programmers I am giving a talk at the University of Pennsylvania’s PL Club next week, and was given the opportunity to assign a bit of homework to the audience. This blog post contains the content of that homework.
Java 8 Specification Bug: Default Interface Method Resolution In a previous blog post, I pointed out some rather surprising behavior involving default interface methods, and cases in which method resolution is ambiguous as specified by the JVM specification. However, after consulting with commenters on the corresponding reddit post, it is possible that that method resolution is never ambiguous, and the JVM specification is incorrect.
Java 8 WTF: Ambiguous Method Lookup I am currently working on adding Java 7/8 support to DoppioJVM. In doing so, I am discovering some of the rather surprising JVM changes required to support Java 7+, and some interesting spec corner cases. In this blog post, I’ll reveal some very surprising behavior involving a new Java 8 feature: Default interface methods!
New Website Launch For the longest time, my personal website was a simple one-page setup. Handcrafted in HTML, frustrating to update, and oft-neglected… I had to make a change.