Tillmann Rendel
aarhus university
daimi
pl & fm group
klaus ostermann
I am PhD student at DAIMI, the Computer Science Department of Aarhus University, in the Programming Languages and Formal Methods group. My supervisor is Klaus Ostermann.
Contact
Contact
Tillmann Rendel
Department of Computer Science
Aarhus University
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
dProgSprog Ressources
- Teaching Assistant for Programming Languages, Spring 2009
- Teaching Assistant for Compiler Construction, Autumn 2008
- Teaching Assistant for Introduction to Computer Science I, Autumn 2003
- Teaching Assistant for Introduction to Computer Science II, Spring 2004
Publications
- Tillmann Rendel, Klaus Ostermann, Christian Hofer.
Typed Self-Representation.
Proceedings of the ACM Conference on Programming Language Design and Implementation (PLDI'09). ACM, 2009.
- Christian Hofer, Klaus Ostermann, Tillmann Rendel, and Adriaan Moors.
Polymorphic embedding of DSLs. In Proceedings of the ACM Conference on Generative Programming and Component Engineering (GPCE'08). ACM, 2008.