Refinement types: A tutorial
Refinement types enrich a language's type system with logical predicates that circumscribe
the set of values described by the type. These refinement predicates provide software …
the set of values described by the type. These refinement predicates provide software …
DynamiTe: dynamic termination and non-termination proofs
There is growing interest in termination reasoning for nonlinear programs and, meanwhile,
recent dynamic strategies have shown they are able to infer invariants for such challenging …
recent dynamic strategies have shown they are able to infer invariants for such challenging …
Gradualizing the calculus of inductive constructions
M Lennon-Bertrand, K Maillard, N Tabareau… - ACM Transactions on …, 2022 - dl.acm.org
We investigate gradual variations on the Calculus of Inductive Construction (CIC) for swifter
prototyping with imprecise types and terms. We observe, with a no-go theorem, a crucial …
prototyping with imprecise types and terms. We observe, with a no-go theorem, a crucial …
Approximate normalization for gradual dependent types
Dependent types help programmers write highly reliable code. However, this reliability
comes at a cost: it can be challenging to write new prototypes in (or migrate old code to) …
comes at a cost: it can be challenging to write new prototypes in (or migrate old code to) …
Bidirectional Typing for the Calculus of Inductive Constructions
M Lennon-Bertrand - 2022 - theses.hal.science
Durant leurs plus de 50 ans d'existence, les assistants à la preuve se sont établis comme
des outils permettant un haut niveau de fiabilité dans de nombreuses applications …
des outils permettant un haut niveau de fiabilité dans de nombreuses applications …
Tackling the awkward squad for reactive programming: the actor-reactor model
In his famous paper entitled" Tackling the Awkward Squad", Peyton Jones studies how
features that traditionally did not fit in the functional programming paradigm can be added to …
features that traditionally did not fit in the functional programming paradigm can be added to …
Checking equivalence in a non-strict language
JC Kolesar, R Piskac, WT Hallahan - Proceedings of the ACM on …, 2022 - dl.acm.org
Program equivalence checking is the task of confirming that two programs have the same
behavior on corresponding inputs. We develop a calculus based on symbolic execution and …
behavior on corresponding inputs. We develop a calculus based on symbolic execution and …
Deep and shallow types for gradual languages
B Greenman - Proceedings of the 43rd ACM SIGPLAN International …, 2022 - dl.acm.org
Sound gradual types come in many forms and offer varying levels of soundness. Two
extremes are deep types and shallow types. Deep types offer compositional guarantees but …
extremes are deep types and shallow types. Deep types offer compositional guarantees but …
Deep and shallow types
B Greenman - 2020 - search.proquest.com
The design space of mixed-typed languages is lively but disorganized. On one hand,
researchers across academia and industry have contributed language designs that allow …
researchers across academia and industry have contributed language designs that allow …
Reactive Programming without Functions
B Oeyen, J De Koster, W De Meuter - arXiv preprint arXiv:2403.02296, 2024 - arxiv.org
Context: Reactive programming (RP) is a declarative programming paradigm suitable for
expressing the handling of events. It enables programmers to create applications that react …
expressing the handling of events. It enables programmers to create applications that react …