Vlad Ureche > Projects

This page presents the different projects I worked or am working on. Some of them are quite old, but I like them so much that I keep them around.

Miniboxing (Scala Compiler Plugin)

I am currently working on improving the performance of generic programs written in Scala by providing a smart mix of compile-time and run-time class specialization. If this short description got you interested, check out the official web page of the miniboxing project or the Scala compiler plugin I'm developing (on github).

If you're interested in using the miniboxing plugin, have a look at:

If you're more interested in the principles of miniboxing, there are a number of resources available:

Scaladoc and Scala Backend Improvements

As part of my technical work in the Programming Methods Laboratory (LAMP), I developed two features for Scaladoc: showing implicitly inherited members and showing type hierarchy diagrams. Both features seem to be used in practice quite often. :)

When I joined the lab I added a backend to phase the Scala compiler for inlining exception handlers, but unfortunately it's going to be phased out in Scala 2.11, with the arrival of Miguel's new backend.

StagedSAC (Multidimensional Array Language Compiler)

When I joined LAMP, I studied optimizing multidimensional array programs, under the supervision of Tiark Rompf, work which led to the development of the StagedSAC compiler. StagedSAC is inspired by the already established SAC compiler, but uses staging to allow new kinds of input-based optimizations. This work was published at PEPM 2012.

Cloud9 Symbolic Execution Engine

Before joining as a PhD student, I worked as an intern at the Dependable Systems Laboratory at EPFL, under Prof. George Candea's supervision. Together with Stefan Bucur and Cristian Zamfir, we worked on validating the idea that symbolic execution can be efficiently parallelized in the cloud, by developing the Cloud9 symbolic execution engine.

The highlights of the internship were the bugs found in software we use and trust everyday, such as the curl download manager or lighttpd web server and diagnosing a Linux kernel livelock that affected our application. We published our results at Eurosys 2011.

Old Projects

I keep a list of Bachelor projects I did very long ago, but I'm still proud of.

Back to main page  or