filmov
tv
Bidirectional Type Checking
Показать описание
Compose NYC 2019
Speaker: David Christiansen
When implementing a type checker, one must answer two questions: how to compare types for sameness, be it a subsumption check for subtyping, a unification algorithm for type inference, or normalization for dependent types, and when to check for sameness. The way most type systems are written provides little guidance on this question. One solution to the problem is bidirectional type checking, in which the typing judgment is split into two modes, one that checks an expression against a given type, and one that concocts a type for an expression. Bidirectional type checking tends to require a relatively low burden of annotations, it scales to powerful type systems, and it tends to do a good job associating type errors with source locations. I’ll discuss the history of bidirectional type checking, show how to bidirectionalize known type systems, and walk through some implementations.
Speaker: David Christiansen
When implementing a type checker, one must answer two questions: how to compare types for sameness, be it a subsumption check for subtyping, a unification algorithm for type inference, or normalization for dependent types, and when to check for sameness. The way most type systems are written provides little guidance on this question. One solution to the problem is bidirectional type checking, in which the typing judgment is split into two modes, one that checks an expression against a given type, and one that concocts a type for an expression. Bidirectional type checking tends to require a relatively low burden of annotations, it scales to powerful type systems, and it tends to do a good job associating type errors with source locations. I’ll discuss the history of bidirectional type checking, show how to bidirectionalize known type systems, and walk through some implementations.
Bidirectional Type Checking
Bidirectional Type Checking for Relational Properties
Type theory elaboration 1: bidirectional type checking
Bidirectional Type Checking
Sound and Complete Bidirectional Typechecking for Higher-Rank Polymorphism with [...]
Building a compiler in rust: Type checking (Part 6)
#39 Equality, Quotation, Bidirectional Type Checking - David Christiansen
How TVS Diodes work
Bidirectional Type Class Instances
Erlang 2021 - Bidirectional Typing for Erlang
Generic bidirectional typing for dependent type theories - Thiago Felicissimo
Requirements Traceability Matrix (RTM) In Software Testing
Bidirectional SFP+ modules - What you need to know to implement them
Reed Mullanix: An Algebraic Approach to Bidirectional Elaboration
TyDe 2021 - Gradual Correctness: a Dynamically Bidirectional Full-Spectrum Dependent Type Theory
TUG 2021 — Vafa Khalighi — Bidirectional Typesetting in TeX: Past, Present, and Future
Power BI tutorial | How to decide the Cross Filter direction? | Single or Bi-directional
Alef: A bidirectional effect system for algebraic effects.
Handling Bidirectional Control Flow
BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding
Testing Bidirectional Power Electronics
BIDIRECTIONAL LINKING IN NOTION | Page links and Backlinks explained
Integration Testing with examples | Software Engineering
{498} TVS Practical Circuit, Unidirectional & Bidirectional Transient Voltage Suppressor TVS Cir...
Комментарии