I am happy to announce that the camera-ready version of my ICSE paper is available now. The topic is on a special kind of static typestate analysis that I developed to soundly disable unnecessary instrumentation for monitoring typestate properties at runtime. The implementation is available in Clara.
New ICSE paper: Efficient Hybrid Typestate Analysis by Determining Continuation-Equivalent States
Eric | January 21, 2010Final version of PhD thesis available
Eric | December 29, 2009Over the holidays I was able to finalize my dissertation on “Verifying finite-state properties of large-scale programs”. (clap)
It’s a great feeling to get this weight of my shoulders. 311 pages were not easy to manage in the end… Many thanks to everyone who contributed to the document, especially to Jan Sinscheck, who still found quite a few typos and misplaced commata in the end. The thesis will shortly be available through eScholarship@McGill and through ProQuest (as PDF and in print).
Now working for CASED
Eric | November 7, 2009 A few days ago I am on a new payroll. I am still working for Mira Mezini and within her research group, but I am now funded by and also doing research for CASED, the Center for Advanced Security Research Darmstadt. With the new job come new responsibilities: I am now responsible for coordinating the CASED-internal graduate school, i.e., organizing courses, managing student affairs, etc.
The CASED research cluster is actually doing quite some exciting research. Folks here conduct research on all levels of security, from low-level hardware issues to secure architectures.
For me, nothing else will change, really. My main task will, fortunately, still remain pursuing fun (and hopefully useful) research. Just to let you know so that nobody is getting confused about my new affiliation…
What else is happening? Since I finished writing up my thesis in Montreal, I have been busy getting settled in Germany again and refilling the paper pipeline. Next week I will be back to Montreal for my thesis defense. Wednesday is the day to keep your fingers crossed for me. 🙂
New Tech Report: Efficient and Precise Typestate Analysis by Determining Continuation-Equivalent States
Eric | September 10, 2009I just uploaded a new Technical Report. The report (currently under submission) describes a novel typestate analysis, called Nop-Shadows Analysis, that I implemented for my doctoral dissertation. The analysis is certainly one of my dissertation’s major technical contributions. I implemented the Nop-Shadows Analysis in the Clara framework, which means that you are welcome to download it, try it out or extend it.
Now available: Clara, a novel framework for implementing hybrid typestate analyses
Eric | September 10, 2009In my doctoral dissertation (click here for a draft), I present Clara (Compile-time Approximation of Runtime Analyses), a novel research framework for the implementation of hybrid typestate analyses. Clara is now online – fully documented – at: http://www.bodden.de/clara/
Typestate properties aid program understanding, and one can even define type systems that prevent programmers from causing typestate errors, or derive static typestate analyses that try to determine whether a given program violates typestate properties. Unfortunately, the typestate-analysis problem is generally undecidable. Researchers have therefore proposed a hybrid approach that uses
static-analysis results to generate a residual runtime monitor. This monitor captures actual property violations as they occur, but only updates its internal state at relevant statements, as determined through static analysis.
Where did Java 5 go?
Eric | September 3, 2009 Today, when I installed MacOS X Leopard, I was surprised to see that the update had remove Java 5 from the disk! The “1.5” folder now is just a symbolic link to the 1.6 JDK! Where is the sense in that? I guess I am not the only developer who just needs a 1.5 JDK from time to time. I don’t care about the old VM but I do care about the old class libraries. When using Java 6 libraries to develop Java 5 compatible code it can easily happen that one uses APIs that were not available in 1.5. Luckily I had time machine set up, so it was easy to get back the “real JDK”. No wonder they save so much disk space in Snow Leopard …
Feng Chen has passed away
Eric | August 16, 2009I just received the very sad and disturbing news that Feng Chen, a friend, fellow researcher, and co-author of mine has unexpectedly passed away, at age 31.
Through his strong track record, I got to know Feng early on in my research career. When Feng and his supervisor Grigore Rosu invited me over to Urbana Champaign in 2007, we also became friends. Since then, we have integrated our work, co-authored a paper, and actually were planning to further extend our collaboration in the future.
UIUC has set up a memorial fund to allow Feng’s family to visit his funeral.
My thoughts are with Feng’s family and fiancée right now, and of course with Feng himself. May his soul rest in peace.
New job, lab and continent (starting in August)
Eric | July 8, 2009In just about a week I will be returning to Germany, leaving Montreal for an indefinite amount of time. (Well, actually I will be back for my defense some time in Fall, but only for a couple of days.) It’s been a very fun time in Montreal but after 3 1/2 years it’s also time for a change. Nevertheless, I will be missing this place. Especially right now in the summer, with all the festivals going on, Montreal is a really great place to be. We will see how Darmstadt compares…
On August 1st I will be starting as a PostDoc with Mira Mezini and her Software Technology Group. Like the Sable Research Group, these folks are working on program analysis of Java-like languages, but with a more dynamic and software-engineeringy twist to it. I think it is going to be great to get a new perspective on things.
Also, of course, being at Darmstadt for me means being much closer to home and my friends and family over there, which is always nice. What else is changing? Well, in terms of research not much. Laurie and I agreed that I should still further maintain Soot for a while, until somebody else at McGill is familiar enough with the framework to take over. I also plan to still make contributions to the AspectBench Compiler. The only other thing I might need to change is the header graphics on my webpage 🙂
VMIL 2009 – The 3rd workshop on Virtual Machines and Intermediate Languages
Eric | July 4, 2009Co-located with OOPSLA 2009 in Orlando, Florida on October 26, 2009
More information & submission here
Important Dates
Abstract Submission Deadline: Aug 8, 2009, 23:59 Samoan (World Clock)
Paper Submission Deadline: Aug 15, 2009, 23:59 Samoan (World Clock)
Notification of Acceptance: Sept 7, 2009
Camera ready copy due: Oct 2, 2009
Workshop: Oct 26, 2009
About the Workshop
The VMIL workshop is a forum for research in virtual machines and intermediate languages. It is dedicated to identifying programming mechanisms and constructs that are currently realized as code transformations or implemented in libraries but should rather be supported at VM level. Candidates for such mechanisms and constructs include modularity mechanisms (aspects, context-dependent layers), concurrency (threads and locking, actors, software transactional memory), transactions, etc. Topics of interest include the investigation of which such mechanisms are worthwhile candidates for integration with the run-time environment, how said mechanisms can be elegantly (and reusably) expressed at the intermediate language level (e.g., in bytecode), how their implementations can be optimized, and how virtual machine architectures might be shaped to facilitate such implementation efforts.