Eelco Visser

Registered user since Wed 19 Mar 2014

Name: Eelco Visser

Bio: Eelco Visser is Antoni van Leeuwenhoek Professor of Computer Science and chair of the Programming Languages Group at Delft University of Technology. His current research is on the foundation and implementation of declarative specification of programming languages. He studied at the University of Amsterdam (master 1993; doctorate 1997), and worked at the Oregon Graduate Institute (postdoc 1997-1998), Utrecht University (assistant professor 1998-2006), and TU Delft (associate professor 2006-2013, full professor since 2013).

His research interests include (domain-specific) programming languages, language engineering, program transformation, and declarative language definition. With his students he has designed and implemented the Spoofax language workbench, as well as several domain-specific languages, including DSLs for syntax definition (SDF3), program transformation (Stratego), static semantics (Statix), software deployment (Nix), and web application development (WebDSL). Applications of WebDSL include the researchr conference hosting site and the WebLab learning management system.

Affiliation: Delft University of Technology

Personal website: http://eelcovisser.org

Research interests: Programming Languages, Domain-Specific Languages, Language Workbenches, Language Engineering, Web Programming

Contributions

SLE 2021General Chair in Organizing Committee within the SLE-track
SPLASH 2021Chair in Steering Committee
SLE General Chair in Organizing Committee
SPLASH 2010


PEPM 2021Committee Member in Program Committee within the PEPM 2021-track
OCaml 2020Author of A Declarative Syntax Definition for OCaml within the OCaml 2020-track
miniKanren 2020Keynote Speaker of Executing Declarative Language Definitions within the miniKanren 2020-track
POPL 2021Author of Intrinsically Typed Compilation with Nameless Labels within the Research Papers-track
ECOOP 2021PC Member in Program Committee within the ECOOP Research Papers-track
SLE 2020Author of Gradually Typing Strategies within the SLE-track
SPLASH 2022Steering Committee Chair in Steering Committee
BAPL 2020Committee Member in Organizing Committee within the BAPL 2020 (Cancelled)-track
Chair in Program Committee within the BAPL 2020 (Cancelled)-track
Committee Member in Organizing Committee within the BAPL 2020 (Cancelled)-track
PLNL 2019Committee Member in Program Committee within the PLNL-track
ProWeb20Author of Evolution of the WebDSL Runtime within the ProWeb 2020-track
SPLASH 2020Session Chair of W-3 (part of OOPSLA)
Chair in Steering Committee
Author of Knowing When to Ask: Artifact within the OOPSLA Artifacts-track
Session Chair of R-6 (part of OOPSLA)
Author of Knowing When to Ask: Sound Scheduling of Name Resolution in Type Checkers Derived from Declarative Specifications within the OOPSLA-track
Committee Member in Review Committee within the OOPSLA-track
Author of Knowing When to Ask: Sound Scheduling of Name Resolution in Type Checkers Derived from Declarative Specifications within the Posters-track
PLDI 2020Organizer of Declarative Language Definition with Spoofax within the Tutorials-track
IC 2019Committee Member in Program Committee within the IC 2019-track
Author of From Whole Program Compilation to Incremental Compilation: A Critical Case within the IC 2019-track
Author of Precise, Efficient, and Expressive Incremental Build Scripts with PIE within the IC 2019-track
CPP 2020Author of Intrinsically-Typed Definitional Interpreters for Linear, Session-Typed Languages within the CPP 2020-track
META 2019Author of From Definitional Interpreter To Symbolic Executor within the META 2019-track
‹Programming› 2020Author of Incremental Compilation for Stratego within the Posters-track
Author of Constructing Hybrid Incremental Compilers for Cross-Module Extensibility with an Internal Build System within the Research Papers-track
PLNL 2018Session Chair of 1 (part of PLNL)
Organizer in Organizing Committee within the PLNL-track
SPLASH 2019Speaker of What is PL Research? within the PLMW-track
Steering Committee Member in Steering Committee
Author of Language-Parametric Semantic Editor Services based on Declarative Type System Specifications within the Posters-track
Session Chair of Awards / SIGPLAN Town Hall Meeting (part of OOPSLA)
Session Chair of Dillig keynote (part of Keynotes)
Chair in Review Committee within the OOPSLA-track
OOPSLA Review Committee Chair in Organizing Committee
Speaker in Speakers & Panelists within the PLMW-track
ECOOP 2019Author of Towards Language-Parametric Semantic Editor Services based on Declarative Type System Specifications within the Research Papers-track
Author of Towards Language-Parametric Semantic Editor Services within the Posters-track
Committee Member in Academic Panel within the Doctoral Symposium-track
Author of Scopes and Frames Improve Meta-Interpreter Specialization within the Research Papers-track
CurryOn 2018Author of Spoofax: Live Programming Language Design within the Curry On Talks-track
NOOL 2018HotCRP Chair in Organizing Committee within the NOOL (CANCELLED)-track
SLE 2018Author of Migrating Business Logic to an Incremental Computing DSL: A Case Study within the SLE 2018-track
Author of Declarative Specification of Indentation Rules: A Tooling Perspective on Parsing and Pretty-Printing Layout-Sensitive Languages within the SLE 2018-track
Author of Migrating Custom DSL Implementations to a Language Workbench (Tool Demo) within the SLE 2018-track
Committee Member in Program Committee within the SLE 2018-track
Session Chair of Parsing / Composition (part of SLE 2018)
Onward! 2018Steering Committee Member in Steering Committee
SPLASH 2018Author of Scopes as Types within the OOPSLA-track
Author of Migrating Business Logic to an Incremental Computing DSL: A Case Study within the Posters-track
Committee Member in Review Committee within the OOPSLA-track
Author of Incremental compilation for Stratego within the Posters-track
Session Chair of Language Design 1 (part of OOPSLA)
Committee Member in Steering Committee
Author of Declarative Specification of Indentation Rules: A Tooling Perspective on Parsing and Pretty-Printing Layout-Sensitive Languages within the Posters-track
Author of Scopes as Types within the Artifacts-track
Author of Scopes as Types within the Posters-track
Author of Migrating Custom DSL Implementations to a Language Workbench: An Industrial Tool Demonstration (Tool Demo) within the Posters-track
Author of Toward a Language-Parametric Code Completion Editor Service within the Posters-track
Parsing@SLE 2017Author of A Modular SGLR Parsing Architecture for Systematic Performance Optimization within the Parsing@SLE 2017-track
‹Programming› 2018Committee Member in Steering Committee
Committee Member in Program Committee within the Research Papers-track
Author of PIE: A Domain-Specific Language for Interactive Software Development Pipelines within the Research Papers-track
Author of Towards Zero-Overhead Disambiguation of Deep Priority Conflicts within the Research Papers-track
WCIRE 2017Author of The Spoofax Language Workbench within the WCIRE 2017-track
IC 2017Author of IceDust Calculation Strategy Composition Performance in Web Applications within the IC 2017-track
ProWeb 2017Committee Member in Program Committee within the ProWeb 2017-track
MoreVMs 2017Author of A Readable and Executable Semantics of Grace within the MoreVMs 2017-track
DLS 2017Author of The Semantics of Name Resolution in Grace within the DLS 2017-track
Onward! 2017Steering Committee Member in Steering Committee
SLE 2017Author of Deep Priority Conflicts in the Wild: A Pilot Study within the SLE-track
Author of FlowSpec: Declarative Dataflow Analysis Specification within the SLE-track
CurryOn 2017Author of Scope Graphs: A Fresh Look at Name Binding in Programming Languages within the Curry On Talks-track
POPL 2018Author of Intrinsically-Typed Definitional Interpreters within the Artifact Evaluation-track
Author of Intrinsically-Typed Definitional Interpreters for Imperative Languages within the Research Papers-track
‹Programming› 2017Committee Member in Steering Committee
Contributor/Author of Steering Committee Meeting within the Organizational-track
LWC@SLE 2016Author of Bootstrapping, Default Formatting, and Skeleton Editing in the Spoofax Language Workbench within the LWC-track
Parsing@SLE 2016Author of Disambiguation for SDF3 with Deep Priority Conflicts within the Parsing@SLE-track
Scala 2016Author of A Scalable Infrastructure for Teaching Concepts of Programming Languages in Scala with WebLab: An Experience Report within the Scala-track
OOPSLA 2016 PC MeetingSPLASH 2016 General Chair in Organizing Committee
Session Chair of Session 1 (part of Workshop)
GRACE 2016Author of Grace in Spoofax: Readable Specification and Implementation in One within the GRACE-track
Committee Member in Program Committee within the GRACE-track
LIVE 2016Author of Towards Live Language Development within the LIVE-track
SPLASH 2017SPLASH 2016 General Chair in Steering Committee
ECOOP 2017Author of IceDust 2: Derived Bidirectional Relations and Calculation Strategy Composition within the ECOOP Research Papers-track
Speaker in Speakers within the ECOOP Summer School-track
Speaker of Declarative Language Definition within the ECOOP Summer School-track
Onward! 2016General Chair in Organizing Committee
Committee Member in Steering Committee
SLE 2016Author of Principled Syntactic Code Completion using Placeholders within the SLE-track
GPCE 2016Author of Bootstrapping Domain-Specific Meta-Languages in Language Workbenches within the GPCE-track
* ICSE 2018 *Committee Member in Program committee within the Technical Papers -track
PEPM 2016Author of A Constraint Language for Static Semantic Analysis Based on Scope Graphs within the PEPM-track
Committee Member in Program Committee within the PEPM-track
ECOOP 2016Author of Scopes Describe Frames: A Uniform Model for Memory Layout in Dynamic Semantics within the Research Track-track
Author of IceDust: Incremental and Eventual Computation of Derived Values in Persistent Object Graphs within the Research Track-track
Author of IceDust: Incremental and Eventual Computation of Derived Values in Persistent Object Graphs within the Posters-track
Author of Scopes Describe Frames: A Uniform Model for Memory Layout in Dynamic Semantics within the Posters-track
Author of Scopes Describe Frames: A Uniform Model for Memory Layout in Dynamic Semantics within the Artifacts-track
Modularity 2016 Committee Member in Steering Committee
Parsing@SLE 2015Author of Improving Syntactic Completion within the Parsing@SLE-track
Author of Towards Abstract-Syntax-Preserving Grammar Migrations within the Parsing@SLE-track
SPLASH 2016General Chair in Organizing Committee
Committee Member in Sponsorship Committee
SPLASH 2016 General Chair of Welcome to SPLASH 2016 within the Keynotes and Awards-track
SPLASH-I Co-Chair in Program Committee within the SPLASH-I-track
Presenter of OOPSLA 10-year Most Influential Paper Award within the Keynotes and Awards-track
Session Chair of Keynote Wednesday (part of Keynotes and Awards)
SPLASH 2016 General Chair in Steering Committee
Session Chair of Session 15 (Keynote) (part of SPLASH-I)
SPLASH 2016 General Chair of SPLASH 2016 General Chair's Report within the Keynotes and Awards-track
POPL 2016Author of T2: Declare Your Language (Part 1): Hands-On Spoofax Tutorial within the Tutorials-track
Speaker of T2: Declare Your Language (Part 2): Name Binding with Scope Graphs within the Tutorials-track
DLS 2015Invited Speaker of DLS Keynote: Declare Your Language within the DLS-track
Onward! 2015Committee Member in Steering Committee
ESOP 2015Author of A Theory of Name Resolution within the ESOP-track
SPLASH 2015Session Chair of 2. Domain Specific Languages (part of OOPSLA)
Committee Member in Program Committee within the OOPSLA-track
Author of Conf.Researchr.Org: Towards a Domain-Specific Content Management System for Managing Large Conference Websites within the Posters-track
Web Technology Chair in Organizing Committee
DSLDIAuthor of A Common Core for Language Tools within the DSLDI-track
Onward! 2014Author of A Language Designer’s Workbench. A One-Stop-Shop for Implementation and Verification of Language Designs within the Onward! Papers-track
Committee Member in Steering Committee
SPLASH 2014Web Technology Chair in Organizing Committee
Committee Member in Steering Committee
SLE 2013Author of Language-Parametric Incremental Name and Type Analysis within the Research Papers-track
Author of The State of the Art in Language Workbenches within the Research Papers-track
SPLASH 2013Committee Member in Program Committee within the OOPSLA-track
Committee Member in Program Committee within the GPCE-track
SPLASH 2012Author of Software development environments on the web: a research agenda within the Onward! Papers-track
Committee Member in External Reviewers within the OOPSLA Research Papers-track
Author of The spoofax name binding language within the Posters-track
SPLASH 2011Author of Declaratively Programming the Mobile Web with Mobl within the OOPSLA-track
Program Chair in Organization within the Onward! -track
Presenter of SugarJ: Library-based Language Extensibility within the Posters-track
Author of Integrated Language Definition Testing: Enabling Test-Driven Language Development within the OOPSLA-track
Onward! Chair in Organizing Committee
Committee Member in Program Committee within the OOPSLA-track

Blog Posts