In memoriam, Eelco Visser

As some of you may know, Eelco Visser unexpectedly passed away on Tuesday 5th of April. Eelco Visser was professor in programming languages at TU Delft, where he lead a thriving research group around the topics of programming language design and language engineering. He was highly valued member of VERSEN. In this brief obituary I would like to highlight some of Eelco’s contributions to the field software engineering, and the national and international communities around it.

Eelco was a prolific researcher with a strong vision, a lot of energy, and exquisite taste. Together with his students and colleagues, he contributed important results in the areas of parsing, disambiguation, domain-specific languages, strategic term rewriting, language workbenches, software configuration management, and other topics. His recent VICI proposal aimed to bring all these topics together in unified vision for a language designer’s workbench, in which he wanted to combine formal approaches to semantics and type systems with practical techniques for defining new programming languages.

Apart from publishing excellent research at the top venues of the field, Eelco was also a driving force in the (international) programming language and language engineering community. He served as PC chair or general chair of conferences like SLE, GPCE, and OOPSLA. He organized workshops, was member of steering committees, and served in many program committees. His influence culminated when he brought SPLASH to Amsterdam in 2016, the ACM flagship conference on programming systems, which had, till then, only been held in North America. He was also co-founder of the IFIP working group on programming language design, which he chaired for many years.

In the Netherlands he was an active member of VERSEN from the start, organizing tracks at conferences, workshops for PhD students, and contributing his sharp mind to the strategic objectives of the association. Needless to say, he educated numerous students in the Netherlands, either through his programming and compiler courses, or through many Master projects and Phd dissertations, which often won national awards.

Eelco was not only a highly successful researcher and driving force in the broader academic community, he was also (at heart) a designer and a programmer. Many of his research results were accompanied with software tools or programming languages that outlived the research phase. I want to highlight a few examples.

First of all, Spoofax, the language workbench based on the syntax definition formalism SDF and the Stratego term rewriting system, which in recent years grew to the comprehensive language designer’s workbench that he envisioned in his VICI proposal.

Second, WebDSL: a domain-specific language for developing web applications. Initially started as a kind of benchmark for the language technology he was developing, it quickly became a mature and modern platform for building real web applications. Case in point is the conf.researchr.org platform, a system for managing conferences, which is used by hundreds of academic events across the globe.

Finally, the Nix build system. Nix presented a new, reliable, and safe way to deploy software, inspired by functional programming concepts. While the initial design and implementation was done while Eelco was at Utrecht University, Nix has since then led its own, independent, life, also as the basis of the NixOS Linux distribution.

So one can see that Eelco’s impact on the world of software is not limited to well-cited research papers, and service to the academic community, but goes further than that in the form of concrete software that actually works.

Eelco’s death leaves a crater, at TU Delft where his research group is now without its visionary leader, in the Netherlands, where is was an active member of the software engineering community, and in the international academic programming languages community. He will be sorely missed.

Tijs van der Storm