PQL: A Purely-Declarative Java Extension for Parallel Programming
The Faculty of Informatics is pleased to announce a seminar given by Christoph Reichenbach
DATE: Friday, April 12th 2013
PLACE: University of Lugano, room SI-008, Informatics building (Via G. Buffi 13)
The popularisation of parallelism is arguably the most fundamental computing challenge for years to come. We present an approach where parallel programming takes place in a restricted (sub-Turing-complete), logic-based declarative language, embedded in Java. Our logic-based language, PQL, can express the parallel elements of a computing task, while regular Java code captures sequential elements. This approach offers a key property: the purely declarative nature of our language allows for aggressive optimization, in much the same way that relational queries are optimized by a database engine. At the same time, declarative queries can operate on plain Java data, extending patterns such as map-reduce to arbitrary levels of nesting and composition complexity. This talk showcases PQL's expressiveness and performance in our prototype implementation.
Christoph Reichenbach received his PhD from the University of Colorado at Boulder in 2010 for developing `Program Metamorphosis,' a novel approach towards refactoring, while working with Prof. Amer Diwan. He then pursued postdoctoral work with Prof. Yannis Smaragdakis at the University of Massachusetts, Amherst, where he worked on embedding declarative languages in imperative languages, and on combined static and dynamic program analyses. Subsequently he worked as software engineer at Google's Search Quality group. He is currently Junior Professor for Software Engineering and Programming Languages at Goethe University Frankfurt.
HOST: Prof. Matthias Hauswirth