The CWI Software Analysis and Transformation (SWAT) group researches techniques and tools to make software easier to understand and create. This year at SPLASH, the group is well represented with some interesting papers and presentations! In chronological order:
-
Pablo Inostroza and Tijs van der Storm, ChromaKey: Towards Extensible Reflection Architectures, at META on Sunday
-
Aggelos Biboudis, Pablo Inostroza, and Tijs van der Storm, Recaf: Java Dialects as Libraries, at GPCE, on Monday
-
Theologos Zacharopolous, Pablo Inostroza, and Tijs van der Storm, Extensible Modeling with Managed Data in Java, at GPCE, on Monday
-
J.G.M. Mengerink, A. Serebrenik, R.R.H. Schiffelers, and Mark van den Brand, Udapt: Edapt Extensions for Industrial Application, at ITSLE, on Monday
-
Tijs van der Storm, Nomen: A Dynamically Typed OO Programming Language, Transpiled to Java, at NOOL, on Monday
-
Jouke Stoel, Jurgen Vinju, Tijs van der Storm, and Joost Bosman, Solving the Bank with Rebel, at ITSLE, on Monday
-
Terence Parr and Jurgen Vinju, Towards a Universal Code Formatter through Machine Learning, at SLE, on Tuesday.
-
Michael Steindorfer and Jurgen Vinju, Towards a Software Product Line of Trie-Based Collections, at GPCE, on Tuesday
-
Pablo Inostroza and Tijs van der Storm, The Rascal Approach to Code in Prose, Computed Properties, and Language Extension, at LWC@SLE, on Tuesday
Also in terms of organization we are contributing to this year’s SPLASH: Jurgen Vinju is steering committee chair of SLE, served in the PC of SLE’16, and is the SPLASH sponsorship chair; Pablo Inostroza was part of the PC of LWC@SLE’16; Aggelos Biboudis started co-organizing the Scala Symposium 2016 while he was interning at CWI. I myself served in the PCs of OOPSLA’16, GPCE’16, META and Scala’16; act as general chair of SLE’16, co-organize DSLDI’16 (with Eric Walkinshaw), LWC@SLE (with Markus Völter, Meinte Boersma and Eugen Schindler), and SPLASH-I (with Eelco Visser); last but not least, I do the publicity for SPLASH (with Ron Garcia).
Some noteworthy facts about some of the papers we’ll be presenting:
-
The Recaf paper at GPCE is the primary work of Aggelos Biboudis, who was supported by the CWI Internship Program. He’ll also present a poster at the Monday poster session.
-
The GPCE paper on extensible modeling in Java (MD4J) is based on the MSc thesis by Theologos Zacharopolous, in the Master Software Engineering at the University of Amsterdam.
-
Jouke’s work on solving the bank is performed in close collaboration with ING Bank. Core component is the Rebel DSL, built with our metaprogramming language Rascal. ING is also kindly sponsoring SPLASH.
-
The paper by Terence Parr (@the_antlr_guy) and Jurgen about a universal formatter presents a new take on an old (unsolved!) problem, namely pretty printing. Instead of writing a formatter by hand, their tool (CodeBuff) learns pretty printing rules from source code examples. It has been awarded the SLE’16 Distinguished Paper Award!
-
Michael will present a product line for trie-based collections; his work on fast and lean immutable data structures provides the foundation of Rascal’s built-in collection types. More info can be found in his OOPSLA’15 paper.
-
If you’re interested in Rascal’s language workbench capabilities, be sure to check out Pablo’s presentation at LWC@SLE, where he will demonstrate how Rascal can be used to solve three of the proposed language workbench challenges.
So, if you want to know more, attend our talks! In the mean time, follow us on Twitter to stay up-to-date: @alex_sug4r, @aserebrenik, @biboudis, @jstoel, @jurgenvinju, @loopingoptimism, @metalinguist, @tvdstorm. By the way, we have some open positions! If you want to work with us, contact Jurgen.