VLDB 2026 Research / reviewers in the wild / expert
Adriaan Moors
dblp:67/752
· DBLP profile ↗
6ranked-venue papers
2as first author
0since 2021 · last 2012
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 5 · 2 first-authorTheory of computation · 1
Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.
| Software engineering, system software, and programming languages
3 papers |
Programming languages and type systems · 92% Compilers and program optimization · 8% | |
| Computer architecture, parallel and distributed computing, and storage systems
1 paper |
GPUs and heterogeneous computing · 67% Parallel and multicore computing · 33% |
Topics — the 8 heaviest of 9, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Programming languages and type systems › type systems › polymorphism
type classes |
0.1 | 1 | 2010 | Type classes as objects and implicits · OOPSLA 2010 |
GPUs and heterogeneous computing
heterogeneous parallel programming |
0.1 | 1 | 2010 | Language virtualization for heterogeneous parallel computing · OOPSLA 2010 |
GPUs and heterogeneous computing
heterogeneous programming models |
0.1 | 1 | 2010 | Language virtualization for heterogeneous parallel computing · OOPSLA 2010 |
Parallel and multicore computing
parallel programming models |
0.1 | 1 | 2010 | Language virtualization for heterogeneous parallel computing · OOPSLA 2010 |
Programming languages and type systems › type systems › polymorphism
generics |
0.1 | 1 | 2008 | Generics of a higher kind · OOPSLA 2008 |
Programming languages and type systems › type systems › polymorphism
parametric polymorphism |
0.1 | 1 | 2008 | Generics of a higher kind · OOPSLA 2008 |
Programming languages and type systems
type systems |
0.1 | 1 | 2008 | Generics of a higher kind · OOPSLA 2008 |
Programming languages and type systems › type systems › polymorphism
ad-hoc polymorphism |
0.0 | 1 | 2010 | Type classes as objects and implicits · OOPSLA 2010 |
Methods — techniques the papers use, named apart from their topics
domain-specific language design · 0.2
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2012 | Scala-virtualizedabstractScala-Virtualized extends the Scala language to better support hosting embedded DSLs. Embedding a DSL in Scala-Virtualized comes with all the benefits of a shallow embedding thanks to Scala's flexible syntax, without giving up analyzing and manipulating the domain program -- typically exclusive to deep embeddings. Through lightweight modular staging, implemented in standard Scala, the benefits of a deep embedding are recovered with little overhead. Scala-Virtualized lifts more of the language's built-in constructs and static information to complete this support and make it more convenient. We illustrate how Scala-Virtualized makes Scala an even better host for embedded DSLs along three axes of customizing the language: syntax, run-time behavior and static semantics. Adriaan Moors, Tiark Rompf, Philipp Haller, Martin Odersky |
PEPM | 1 |
| 2010 | Language virtualization for heterogeneous parallel computingabstractAs heterogeneous parallel systems become dominant, application developers are being forced to turn to an incompatiblemix of low level programming models (e.g. OpenMP, MPI, CUDA, OpenCL). However, these models do little to shield developers from the difficult problems of parallelization, data decomposition and machine-specific details. Most programmersare having a difficult time using these programming models effectively. To provide a programming modelthat addresses the productivity and performance requirements for the average programmer, we explore a domainspecificapproach to heterogeneous parallel programming. Hassan Chafi, Zach DeVito, Adriaan Moors, Tiark Rompf, Arvind K. Sujeeth, Pat Hanrahan, Martin Odersky, Kunle Olukotun |
OOPSLA | 3 |
| 2010 | Type classes as objects and implicitsabstractType classes were originally developed in Haskell as a disciplined alternative to ad-hoc polymorphism. Type classes have been shown to provide a type-safe solution to important challenges in software engineering and programming languages such as, for example, retroactive extension of programs. They are also recognized as a good mechanism for concept-based generic programming and, more recently, have evolved into a mechanism for type-level computation. Bruno C. d. S. Oliveira, Adriaan Moors, Martin Odersky |
OOPSLA | 2 |
| 2009 | Fighting bit Rot with Types (Experience Report: Scala Collections)abstractWe report on our experiences in redesigning Scala's collection libraries, focussing on the role that type systems play in keeping software architectures coherent over time. Type systems can make software architecture more explicit but, if they are too weak, can also cause code duplication. We show that code duplication can be avoided using two of Scala's type constructions: higher-kinded types and implicit parameters and conversions. Martin Odersky, Adriaan Moors |
FSTTCS | 2 |
| 2008 | Polymorphic embedding of dslsabstractThe influential pure embedding methodology of embedding domain-specific languages (DSLs) as libraries into a general-purpose host language 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 pure embedding are reconciled with the flexibility attainable by external toolchains. Christian Hofer, Klaus Ostermann, Tillmann Rendel, Adriaan Moors |
GPCE | 4 |
| 2008 | Generics of a higher kindabstractWith Java 5 and C# 2.0, first-order parametric polymorphism was introduced in mainstream object-oriented programming languages under the name of generics. Although the first-order variant of generics is very useful, it also imposes some restrictions: it is possible to abstract over a type, but the resulting type constructor cannot be abstracted over. This can lead to code duplication. We removed this restriction in Scala, by allowing type constructors as type parameters and abstract type members. This paper presents the design and implementation of the resulting type constructor polymorphism. Furthermore, we study how this feature interacts with existing object-oriented constructs, and show how it makes the language more expressive. Adriaan Moors, Frank Piessens, Martin Odersky |
OOPSLA | 1 |