Demo Data from SIGIR 2026 / reviewers in the wild / expert
Chun Yin Chau
dblp:334/4498
· DBLP profile ↗
3ranked-venue papers
1as first author
3since 2021 · last 2026
0000-0003-0323-6644ORCID · corroborated
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 3 · 1 first-author · 3 since 2021
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 · 100% |
Topics — the 8 heaviest of 8, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Programming languages and type systems › type systems
subtyping |
2.3 | 3 | 2026 | The Simple Essence of Boolean-Algebraic Subtyping: Semantic Soundness for Algebraic Union, Intersection, Negation, and Equi-recursive Types · Proc. ACM Program. Lang. 2026 When Subtyping Constraints Liberate: A Novel Type Inference Approach for First-Class Polymorphism · Proc. ACM Program. Lang. 2024 MLstruct: principal type inference in a Boolean algebra of structural types · Proc. ACM Program. Lang. 2022 |
Programming languages and type systems
type inference |
1.3 | 2 | 2024 | When Subtyping Constraints Liberate: A Novel Type Inference Approach for First-Class Polymorphism · Proc. ACM Program. Lang. 2024 MLstruct: principal type inference in a Boolean algebra of structural types · Proc. ACM Program. Lang. 2022 |
Programming languages and type systems › type systems › recursive types
equirecursive types |
1.0 | 1 | 2026 | The Simple Essence of Boolean-Algebraic Subtyping: Semantic Soundness for Algebraic Union, Intersection, Negation, and Equi-recursive Types · Proc. ACM Program. Lang. 2026 |
Programming languages and type systems
type systems |
1.0 | 1 | 2026 | The Simple Essence of Boolean-Algebraic Subtyping: Semantic Soundness for Algebraic Union, Intersection, Negation, and Equi-recursive Types · Proc. ACM Program. Lang. 2026 |
Programming languages and type systems › type systems › subtyping
intersection and union types |
0.9 | 2 | 2026 | MLstruct: principal type inference in a Boolean algebra of structural types · Proc. ACM Program. Lang. 2022 The Simple Essence of Boolean-Algebraic Subtyping: Semantic Soundness for Algebraic Union, Intersection, Negation, and Equi-recursive Types · Proc. ACM Program. Lang. 2026 |
Programming languages and type systems › type systems
coercion |
0.8 | 1 | 2024 | When Subtyping Constraints Liberate: A Novel Type Inference Approach for First-Class Polymorphism · Proc. ACM Program. Lang. 2024 |
Programming languages and type systems › type inference
first-class polymorphism |
0.8 | 1 | 2024 | When Subtyping Constraints Liberate: A Novel Type Inference Approach for First-Class Polymorphism · Proc. ACM Program. Lang. 2024 |
Programming languages and type systems › type inference
principal types |
0.6 | 1 | 2022 | MLstruct: principal type inference in a Boolean algebra of structural types · Proc. ACM Program. Lang. 2022 |
Methods — techniques the papers use, named apart from their topics
semantic soundness proof · 1.0coinductive reasoning · 1.0boolean homomorphisms · 1.0recursion-avoiding heuristic · 0.8declarative type system · 0.8sound and complete type inference algorithm · 0.6
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2026 | The Simple Essence of Boolean-Algebraic Subtyping: Semantic Soundness for Algebraic Union, Intersection, Negation, and Equi-recursive TypesabstractBoolean-algebraic subtyping (BAS) is a powerful subtyping approach introduced in 2022 as the “secret sauce” enabling backtracking-free principal type inference in the MLstruct research language, a structurally-typed functional programming language with tagged records, tag and record subtyping, and tag-based pattern matching. By supporting distributive intersection, union, negation, and equi-recursive types, MLstruct can express powerful programming patterns, such as subtyped extensible variants, without needing row variables. But the use of atypical subtyping rules that violate some interpretations of intersection and union types, the mutual distributivity between these types, and the complexity of coinductive reasoning for equi-recursive types have collectively made the study of BAS difficult. The syntactic soundness proofs provided in the original work are dauntingly complicated and long-winded, obscuring the intuitions behind the correctness of BAS. In this paper, we distill the simple essence of Boolean-algebraic subtyping: we discover that BAS can be understood through five families of characteristic Boolean homomorphisms defined on types in context. Two of these map to power sets of simpler objects; the rest map back to types, but under an unguarded coinductive assumptions context. Together, these homomorphisms let us prove rather directly that BAS is sound, in that it does not relate constructors of incompatible runtime shapes. These homomorphisms are characteristic in the sense that they are sufficient to capture the meaning of subyping: we prove that if an inequality holds between two types under all these homomorphisms, then subtyping holds between the two types in the original context. This directly suggests a new subtyping decision procedure for BAS, which avoids some inefficiencies in the original algorithm, although it still has exponential worst-case time complexity. We prove that the subtyping problem is in fact co-NP-hard even without recursive types. Finally, we discover that BAS is already powerful enough to encode the removal of a field from a type. This allows us to support extensible records through one new term form and one new typing rule, but, perhaps surprisingly, no changes to subtyping at all. Our new approach to the semantics of BAS sheds some light on the core of MLstruct’s type system. It could be adapted to other languages with algebraic flavors of subtyping, such as Scala 3 and Ceylon, making their design and verification more approachable. Tellingly, all our subtyping soundness proofs fit inside the main body of this paper, with only some administrative lemmas relegated to the appendix. Chun Yin Chau, Lionel Parreaux |
Proc. ACM Program. Lang. | 1 |
| 2024 | When Subtyping Constraints Liberate: A Novel Type Inference Approach for First-Class PolymorphismabstractType inference in the presence of first-class or “ impredicative ” second-order polymorphism à la System F has been an active research area for several decades, with original works dating back to the end of the 80s. Yet, until now many basic problems remain open, such as how to type check expressions like ( λ x . ( x 123 , x True ) ) id reliably. We show that a type inference approach based on multi-bounded polymorphism , a form of implicit polymorphic subtyping with multiple lower and upper bounds, can help us resolve most of these problems in a uniquely simple and regular way. We define F ≤ , a declarative type system derived from the existing theory of implicit coercions by Cretin and Rémy (LICS 2014), and we introduce SuperF, a novel algorithm to infer polymorphic multi-bounded F ≤ types while checking user type annotations written in the syntax of System F. We use a recursion-avoiding heuristic to guarantee termination of type inference at the cost of rejecting some valid programs, which thankfully rarely triggers in practice. We show that SuperF is vastly more powerful than all first-class-polymorphic type inference systems proposed so far, significantly advancing the state of the art in type inference for general-purpose programming languages. Lionel Parreaux, Aleksander Boruch-Gruszecki, Andong Fan, Chun Yin Chau |
Proc. ACM Program. Lang. | 4 |
| 2022 | MLstruct: principal type inference in a Boolean algebra of structural typesabstractIntersection and union types are becoming more popular by the day, entering the mainstream in programming languages like TypeScript and Scala 3. Yet, no language so far has managed to combine these powerful types with principal polymorphic type inference. We present a solution to this problem in MLstruct, a language with subtyped records, equirecursive types, first-class unions and intersections, class-based instance matching, and ML-style principal type inference. While MLstruct is mostly structurally typed, it contains a healthy sprinkle of nominality for classes, which gives it desirable semantics, enabling the expression of a powerful form of extensible variants that does not need row variables. Technically, we define the constructs of our language using conjunction, disjunction, and negation connectives, making sure they form a Boolean algebra, and we show that the addition of a few nonstandard but sound subtyping rules gives us enough structure to derive a sound and complete type inference algorithm. With this work, we hope to foster the development of better type inference for present and future programming languages with expressive subtyping systems. Lionel Parreaux, Chun Yin Chau |
Proc. ACM Program. Lang. | 2 |