Paolo G. Giarrusso
I am a Ph.D. student in the Programming Languages and Software Engineering research group at the Department of Mathematics and Computer Science of University of Marburg, Germany.
I have (the equivalent of) a M.Sc. in Computer Science in the University of Catania (called “Laurea specialistica” in Italy).
I studied for a semester in the prestigious University of Aarhus, Denmark; there I attended a course with Lars Bak, lead developer of Google V8, on the implementation of virtual machines, and implemented with a colleague an interpreter for a subset of Python much faster than the original.
Links about me
- Curriculum vitae
- ClaimID profile
- Some of my Open Source contributions (Ohloh profile)
- My computer science blog
Participated in development of:
- UserModeLinux, a working project to run a virtualized Linux kernel as a normal process without hardware support, included in the mainline kernel, developed with Jeff Dike and others.
- Jext, a text editor for programmers, developed with Romain Guy.
Designed and initiated:
- Micropython, a fast interpreter for a subset of Python, 2-3x faster than CPython, in the course on Virtual Machines by Lars Bak, together with another colleague.
- A compiler for a substantial subset of Java in the Compilation course in Aarhus University, with two colleagues.
My current research interests revolve around programming language theory and practice, study of domain-specific embedded languages (DSELs), and applications of these to distributed and database-based systems, in the setting of modern functional languages, especially Scala and Haskell, which are better suited for DSL embedding. In the recent past, I have worked in the field of distributed systems and programming language implementation, and I still have an interest in operating systems.
More in general, I am passionate both about mathematics, especially discrete mathematics, and dirty and concrete hacking and programming. I like thinking of myself as a good programmer in the first place.
TypeChef: Type checking #ifdef variability (with application to the Linux kernel).
This work is described in:
Christian Kästner, Paolo G. Giarrusso, Tillmann Rendel, Sebastian Erdweg, Klaus Ostermann, and Thorsten Berger.
Variability-Aware Parsing in the Presence of Lexical Macros and Conditional Compilation.
In Proceedings of the 26th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA) (Portland), October 2011. ACM Press.
Christian Kästner, Paolo G. Giarrusso, and Klaus Ostermann.
Partial Preprocessing C Code for Variability Analysis.
In Proceedings of the Fifth International Workshop on Variability Modelling of Software-intensive Systems (VaMoS) (Namur, Belgium), pages 137-140, January 2011. ACM Press.
Paolo G. Giarrusso.
TypeChef: Towards Correct Variability Analysis of Unpreprocessed C Code for Software Product Lines.
Master’s thesis (tesi di diploma di licenza di 2° livello), Scuola Superiore di Catania, 2011. Slides available.
- Christian Kästner, Paolo G. Giarrusso, Tillmann Rendel, Sebastian Erdweg, Klaus Ostermann, and Thorsten Berger. Variability-Aware Parsing in the Presence of Lexical Macros and Conditional Compilation.
On modularity and information hiding.
Klaus Ostermann, Paolo G. Giarrusso, Christian Kästner and Tillmann Rendel. Revisiting Information Hiding: Reflections on Classical and Nonclassical Modularity.
In Proceedings of the 25th European Conference on Object-Oriented Programming (ECOOP). Springer-Verlag, July 2011.
The current (preliminary) status is described in:
Paolo G. Giarrusso. Thread-safe Efficient Mutable Arguments for Remote Method Invocation in Java.
PhD Student Workshop, 25th European Conference on Object-Oriented Programming (ECOOP). July 2011.
Slides and a poster will be available soon.
Norbert Siegmund, Marko Rosenmüller, Christian Kästner, Paolo G. Giarrusso, Sven Apel, and Sergiy Kolesnikov. Scalable Prediction of Non-functional Properties in Software Product Lines.
In Proceedings of the 15th International Software Product Line Conference (SPLC) (Munich), August 2011. IEEE Computer Society. Winner of the Best Research Paper Award.
Extended version accepted for publication by the journal Information and Software Technology.
Paolo G. Giarrusso, Giuseppe Pappalardo, Luigi Toscano and Emiliano Tramontana. RexMidas: A Reflective Middleware for Transparently and Effectively Distributing Objects on a Grid System.
In Proceedings of IEEE 17th Workshop on Enabling Technologies: Infrastructure for Collaborative Enterprises (WETICE), June 2008. IEEE Computer Society.
Cristiano Longo, Paolo G. Giarrusso. A protocol to preserve a code of conduct.
In Proceedings of the 2007 ACM Symposium on Applied computing (SAC) (Seoul), 2007. ACM Press.
- Winter Semester 2012/13: Teaching Assistant for Introduction to Software Engineering.
- Winter Semester 2011/12: Teaching Assistant for Web Technologies.
- Summer Semester 2011: Software Lab (Software-Praktikum)
- Winter Semester 2010/11: Seminar on Virtual Machines:
Email: pgiarrusso (at) informatik (dot) uni-marburg (dot) de
Office: 05 D 04
Department of Mathematics and Computer Science
University of Marburg