Tillmann Rendel
university of marburg
mathematics and computer science
klaus ostermann
I am PhD student at the Department of Mathematics and Computer Science of the University of Marburg. My supervisor is Klaus Ostermann.
Contact
Tillmann Rendel
Department of Mathematics and Computer Science
University of Marburg
Hans-Meerwein Str.
35032 Marburg
rendel@informatik.uni-marburg.de
Research
I am interested in programming languages so flexible and expressive, that they
can be extended by mere libraries to yield new languages, which
traditionally would have been implemented from scratch. Which abstraction
mechanisms are useful for this kind of embedded languages? How far can static
typing go with this degree of flexibility? Can a tower of languages
implemented on top each other avoid the interpretative overhead? How does
existing language concepts interact with these goals?
project page
Polymorphic Embedding.
The usual methodology of embedding domain-specific languages (DSLs) as
libraries forces the DSL designer to commit to a single semantics. This
precludes the subsequent addition of compilation, optimization or
domain-specific analyses. We propose polymorphic embedding of DSLs, where many
different interpretations of a DSL can be provided as reusable components, and
show how polymorphic embedding can be realized in the programming language
Scala. With polymorphic embedding, the static type-safety, modularity,
composability and rapid prototyping of the embedded approach are reconciled
with the flexibility attainable by external toolchains.
project page
Typed Self-Representation.
We explore the theoretical limits of statically typed embedding by
studying typed lambda calculi which allow to embed themself including their
own type-system. In fact, we propose the
Fω*
calculus as a possible base for host languages because it allows such a
metacircular embedding.
We believe that metacircular embedding plays a similar role for statically
typed languages as metacircular interpretation for untyped languages.
Teaching
- Teaching Assistant for Software Analysis, Marburg University, Spring 2011
- Organisation of hands-on training in Software Engineering, Marburg University, Spring 2010
- Teaching Assistant for Software Design and Programming Techniques, Marburg University, Spring 2010
- Teaching Assistant for Programming Languages, Marburg University, Autumn 2009
- Teaching Assistant for Programming Languages, Aarhus University, Spring 2009
- Teaching Assistant for Compiler Construction, Aarhus University, Autumn 2008
- Teaching Assistant for Introduction to Computer Science I, Technical University of Darmstadt, Autumn 2003
- Teaching Assistant for Introduction to Computer Science II, Technical University of Darmstadt, Spring 2004
Publications
-
Sebastian Erdweg,
Paolo G. Giarrusso,
and Tillmann Rendel.
Language Composition Untangled.
To appear in
Proc. of Workshop on
Language Descriptions,
Tools and Applications (LDTA), 2012.
-
Sebastian Erdweg,
Lennart C. L. Kats,
Tillmann Rendel,
Christian Kästner,
Klaus Ostermann,
and Eelco Visser.
Growing a Language Environment with Editor Libraries.
Proc. of the International Conference on
Generative Programming and Component Engineering (GPCE).
ACM, New York, 2011.
-
Sebastian Erdweg,
Tillmann Rendel,
Christian Kästner,
and Klaus Ostermann.
SugarJ: Library-based Syntactic Language Extensibility.
Proc. of Conference on
Object-Oriented Programming, Systems,
Languages, and Applications (OOPSLA).
ACM, New York, 2011.
-
Christian Kästner,
Paolo G. Giarrusso,
Tillmann Rendel,
Sebastian Erdweg,
Klaus Ostermann,
and Thorsten Berger.
Variability-Aware Parsing
in the Presence of Lexical Macros
and Conditional Compilation.
Proc. of the Conference on
Object-Oriented Programming, Systems,
Languages, and Applications (OOPSLA).
ACM, New York, 2011.
-
Klaus Ostermann,
Paolo G. Giarrusso,
Christian Kästner,
and Tillmann Rendel.
Revisiting Information Hiding:
Reflections on Classical and Nonclassical Modularity.
In Proc. of the European Conference on
Object-Oriented Programming (ECOOP).
Springer-Verlag, Berlin, Heidelberg, 2011.
-
Tillmann Rendel
and Klaus Ostermann.
Invertible syntax descriptions:
Unifying parsing and pretty printing.
In Proc. of the Symposium on Haskell.
ACM, New York, 2010.
-
Tillmann Rendel,
Klaus Ostermann,
and Christian Hofer.
Typed Self-Representation.
In Proc. of the Conference on
Programming Language Design and Implementation (PLDI).
ACM, New York, 2009.
-
Christian Hofer,
Klaus Ostermann,
Tillmann Rendel,
and Adriaan Moors.
Polymorphic embedding of DSLs.
In Proc. of the Conference on
Generative Programming and Component Engineering (GPCE).
ACM, New York, 2008.