VLDB 2026 Research / reviewers in the wild / expert
Matteo Cimini
dblp:29/7866
· DBLP profile ↗
22ranked-venue papers
10as first author
6since 2021 · last 2026
0000-0003-0162-9997ORCID · corroborated
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 15 · 8 first-author · 4 since 2021Theory of computation · 7 · 2 first-author · 2 since 2021Applied, interdisciplinary, general and emerging computing · 1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2026 | Type soundness of functional languages with subtyping in Lang-n-Prove
Matteo Cimini, Joan Montas |
Sci. Comput. Program. | 1 |
| 2025 | From Program Logics Towards Language Logics
Matteo Cimini |
ICTAC | 1 |
| 2023 | Towards the Complexity Analysis of Programming Language Proof Methods
Matteo Cimini |
ICTAC | 1 |
| 2023 | Testing Languages with a Languages-as-Databases Approach
Matteo Cimini |
TAP | 1 |
| 2022 | A Query Language for Language Analysis
Matteo Cimini |
SEFM | 1 |
| 2022 | Lang-n-Prove: A DSL for Language ProofsabstractProofs of language properties often follow a schema that does not apply just to one language but, rather, applies to many languages of a certain class. Matteo Cimini |
SLE | 1 |
| 2020 | Extrinsically typed operational semantics for functional languagesabstractWe present a type system over language definitions that classifies parts of the operational semantics of a language in input, and models a common language design organization. The resulting typing discipline guarantees that the language at hand is automatically type sound. Matteo Cimini, Dale Miller 0001, Jeremy G. Siek |
SLE | 1 |
| 2020 | A Calculus for Language Transformations
Benjamin Mourad, Matteo Cimini |
SOFSEM | 2 |
| 2018 | Languages as first-class citizens (vision paper)abstractIn this paper, we introduce languages as first-class citizens as a sub-paradigm of language-oriented programming. In this approach, language definitions are in the context of a general purpose programming language with the same status as any other expression. In particular, language definitions are elevated to be run-time values, that can be assigned to variables, passed to functions, returned by functions, and inserted into lists, to name a few possibilities. This approach offers flexible features in the run-time creation and modification of languages, and may promote new idioms in language-oriented programming. As a proof of concept, we have designed and implemented lang-n-play, a functional language with languages as first-class citizens. We present the features of lang-n-play with an example, and show that they naturally enable dynamic programming scenarios. Matteo Cimini |
SLE | 1 |
| 2018 | Ghostbuster: A tool for simplifying and converting GADTsabstractAbstract Generalized Algebraic Data Types, or simply GADTs, can encode non-trivial properties in the types of the constructors. Once such properties are encoded in a datatype, however, all code manipulating that datatype must provide proof that it maintains these properties in order to typecheck. In this paper, we take a step toward gradualizing these obligations. We introduce a tool, Ghostbuster, that produces simplified versions of GADTs which elide selected type parameters, thereby weakening the guarantees of the simplified datatype in exchange for reducing the obligations necessary to manipulate it. Like ornaments , these simplified datatypes preserve the recursive structure of the original, but unlike ornaments, we focus on information-preserving bidirectional transformations. Ghostbuster generates type-safe conversion functions between the original and simplified datatypes, which we prove are the identity function when composed. We evaluate a prototype tool for Haskell against thousands of GADTs found on the Hackage package database, generating simpler Haskell'98 datatypes and round-trip conversion functions between the two. Timothy A. K. Zakian, Trevor L. McDonell, Matteo Cimini, Ryan Newton |
J. Funct. Program. | 3 |
| 2017 | Automatically generating the dynamic semantics of gradually typed languagesabstractMany language designers have adopted gradual typing. However, there remains open questions regarding how to gradualize languages. Cimini and Siek (2016) created a methodology and algorithm to automatically generate the type system of a gradually typed language from a fully static version of the language. In this paper, we address the next challenge of how to automatically generate the dynamic semantics of gradually typed languages. Such languages typically use an intermediate language with explicit casts. Matteo Cimini, Jeremy G. Siek |
POPL | 1 |
| 2016 | Ghostbuster: a tool for simplifying and converting GADTsabstractGeneralized Algebraic Dataypes, or simply GADTs, can encode non-trivial properties in the types of the constructors. Once such properties are encoded in a datatype, however, all code manipulating that datatype must provide proof that it maintains these properties in order to typecheck. In this paper, we take a step towards gradualizing these obligations. We introduce a tool, Ghostbuster, that produces simplified versions of GADTs which elide selected type parameters, thereby weakening the guarantees of the simplified datatype in exchange for reducing the obligations necessary to manipulate it. Like ornaments, these simplified datatypes preserve the recursive structure of the original, but unlike ornaments we focus on information-preserving bidirectional transformations. Ghostbuster generates type-safe conversion functions between the original and simplified datatypes, which we prove are the identity function when composed. We evaluate a prototype tool for Haskell against thousands of GADTs found on the Hackage package database, generating simpler Haskell'98 datatypes and round-trip conversion functions between the two. Trevor L. McDonell, Timothy A. K. Zakian, Matteo Cimini, Ryan Newton |
ICFP | 3 |
| 2016 | The gradualizer: a methodology and algorithm for generating gradual type systemsabstractMany languages are beginning to integrate dynamic and static typing. Siek and Taha offered gradual typing as an approach to this integration that provides a coherent and full-span migration between the two disciplines. However, the literature lacks a general methodology for designing gradually typed languages. Our first contribution is to provide a methodology for deriving the gradual type system and the compilation to the cast calculus. Based on this methodology, we present the Gradualizer, an algorithm that generates a gradual type system from a well-formed type system and also generates a compiler to the cast calculus. Our algorithm handles a large class of type systems and generates systems that are correct with respect to the formal criteria of gradual typing. We also report on an implementation of the Gradualizer that takes a type system expressed in lambda-prolog and outputs its gradually typed version and a compiler to the cast calculus in lambda-prolog. Matteo Cimini, Jeremy G. Siek |
POPL | 1 |
| 2016 | PTRebeca: Modeling and analysis of distributed and asynchronous systems
Ehsan Khamespanah, Marjan Sirjani, Holger Hermanns, Matteo Cimini |
Sci. Comput. Program. | 5 |
| 2015 | A Lightweight Formalization of the Metatheory of Bisimulation-Up-ToabstractBisimilarity of two processes is formally established by producing a bisimulation relation that contains those two processes and obeys certain closure properties. In many situations, particularly when the underlying labeled transition system is unbounded, these bisimulation relations can be large and even infinite. The bisimulation-up-to technique has been developed to reduce the size of the relations being computed while retaining soundness, that is, the guarantee of the existence of a bisimulation. Such techniques are increasingly becoming a critical ingredient in the automated checking of bisimilarity. This paper is devoted to the formalization of the meta theory of several major bisimulation-up-to techniques for the process calculi CCS and the π-calculus (with replication). Our formalization is based on recent work on the proof theory of least and greatest fixpoints, particularly the use of relations defined (co-)inductively, and of co-inductive proofs about such relations, as implemented in the Abella theorem prover. An important feature of our formalization is that our definitions of the bisimulation-up-to relations are, in most cases, straightforward translations of published informal definitions, and our proofs clarify several technical details of the informal descriptions. Since the logic behind Abella also supports λ-tree syntax and generic reasoning using the ∇-quantifier, our treatment of the λ-calculus is both direct and natural. Kaustuv Chaudhuri, Matteo Cimini, Dale Miller 0001 |
CPP | 2 |
| 2015 | Monotonic References for Efficient Gradual Typing
Jeremy G. Siek, Michael M. Vitousek, Matteo Cimini, Sam Tobin-Hochstadt, Ronald Garcia |
ESOP | 3 |
| 2015 | Principal Type Schemes for Gradual ProgramsabstractGradual typing is a discipline for integrating dynamic checking into a static type system. Since its introduction in functional languages, it has been adapted to a variety of type systems, including object-oriented, security, and substructural. This work studies its application to implicitly typed languages based on type inference. Siek and Vachharajani designed a gradual type inference system and algorithm that infers gradual types but still rejects ill-typed static programs. However, the type system requires local reasoning about type substitutions, an imperative inference algorithm, and a subtle correctness statement. Ronald Garcia, Matteo Cimini |
POPL | 2 |
| 2014 | Modelling and simulation of asynchronous real-time systems using Timed Rebeca
Arni Hermann Reynisson, Marjan Sirjani, Luca Aceto, Matteo Cimini, Anna Ingólfsdóttir, Steinar Hugi Sigurdarson |
Sci. Comput. Program. | 4 |
| 2012 | Proving the validity of equations in GSOS languages using rule-matching bisimilarityabstractThis paper presents a bisimulation-based method for establishing the soundness of equations between terms constructed using operations whose semantics are specified by rules in the GSOS format of Bloom, Istrail and Meyer. The method is inspired by de Simone's FH-bisimilarity and uses transition rules as schematic transitions in a bisimulation-like relation between open terms. The soundness of the method is proved and examples showing its applicability are provided. The proposed bisimulation-based proof method is incomplete, but we do offer some completeness results for restricted classes of GSOS specifications. An extension of the proof method to the setting of GSOS languages with predicates is also offered. Luca Aceto, Matteo Cimini, Anna Ingólfsdóttir |
Math. Struct. Comput. Sci. | 2 |
| 2012 | Rule formats for distributivity
Luca Aceto, Matteo Cimini, Anna Ingólfsdóttir, Mohammad Reza Mousavi 0001, Michel A. Reniers |
Theor. Comput. Sci. | 2 |
| 2011 | Rule Formats for Distributivity
Luca Aceto, Matteo Cimini, Anna Ingólfsdóttir, Mohammad Reza Mousavi 0001, Michel A. Reniers |
LATA | 2 |
| 2011 | SOS rule formats for zero and unit elements
Luca Aceto, Matteo Cimini, Anna Ingólfsdóttir, Mohammad Reza Mousavi 0001, Michel A. Reniers |
Theor. Comput. Sci. | 2 |