Eric Van Wyk
Department of Computer Science and Engineering
University of Minnesota
4-192 Keller Hall
200 SE Union Street
Minneapolis, MN 55455, USA
Office hours: Monday, 1:00pm-2:00pm and Wednesday, 2:00pm-3:00pm
Contact: firstname.lastname@example.org, +1 612 625 0329,
Office: 6-203 Keller Hall (map)
My primary research interests are in programming languages, especially extensible languages. Of special interest are declarative specifications of languages and language tools. More information is available on my group's web page: Minnesota Extensible Language Tools.
In investigating extensible languages and compilers we have developed two systems for the design and implementation of languages.
The first is Silver, an attribute grammar specification language (and its supporting tools) that allows for the highly-modular specification of languages.
The second is Copper, an integrated parser and context-aware scanner generator. Context aware scanners use information from the parser to be more discriminating in the tokens they return. This often simplifies the grammar as tokens don't need to be overloaded and used in multiple contexts. This turns out to be quite useful in extensible language specification.
Publications can be found here.
Research OpportunitiesI am always looking for motivated students with an interest in programming languages. If you are interested in the mix of theoretical and practical work that often occurs in research in programming languages then please get in contact with me.
TeachingI teach courses on programming languages, compilers, and principles of programming, most recently
- CSci 5106: Programming Languages, Fall 2013, Fall 2015, Fall 2016
- CSci 5980/8980: Topics in Functional Programming, Spring 2016
- CSci 5161: Introduction to Compilers, Spring 2015
- CSci 2041: Advanced Programming Principles, Fall 2014
- CSci 3081: Program Design and Development
- Founding Steering Committee Member: ACM SIGPLAN International Conference on Software Language Engineering
- Vice Chair: IFIP Working Group 2.11: Program Generation.
- General Chair: 6th International Conference on Software Language Engineering (SLE 2013).
- Program Committee Chair/Co-chair:
- International Workshop on Languages Descriptions, Tools, and Applications (LDTA 2011). Co-chair with Claus Brabrand.
- First International Conference on Software Language Engineering (SLE 2008). Co-chair with Dragan Gasevic.
- Program Committees:
- European Conference on Object Oriented Programming (ECOOP 2016). External Review Committee member.
- Workshop on Partial Evaluation and Program Manipulation (PEPM 2016).
- 3rd International Workshop on The Globalization of Modeling Languages (GEMOC 2015).
- Onward! Conference. Co-located with OOPSLA at SPLASH (Onward! 2015).
- 7th International Conference on Software Language Engineering (SLE 2014).
- ACM Workshop on Partial Evaluation and Program Manipulation (PEPM 2014).
- ACM SIGAda Conference on High Integrity Languages Technology (HILT 2013).
- 5th International Conference on Software Language Engineering (SLE 2012).
- ACM SIGAda Conference on High Integrity Languages Technology (HILT 2012).
- ACM Workshop on Partial Evaluation and Program Manipulation (PEPM 2012).
- Associate Professor, Dept. of Computer Science and Engineering, University of Minnesota, Aug. 2008 - present ;
- Assistant Professor, Dept. of Computer Science and Engineering, University of Minnesota, Jan. 2002 - Aug. 2008;
- Post Doctoral Researcher, Computing Laboratory, University of Oxford, Jan. 1999 - Dec. 2001;