paperbot · PL 论文追踪

RSS

Formal Semantics and Program Logics for a Fragment of OCaml

ICFP 9(ICFP)2025
Remy Seassau, Irene Yoon, Jean-Marie Madiot, François Pottier

尚未生成 AI 速览(可能缺少 API key 或等待下次运行补跑)。

原文摘要(Abstract)

This paper makes a first step towards a formal definition of OCaml and a foundational program verification environment for OCaml. We present a formal definition of OLang, a nontrivial sequential fragment of OCaml, which includes first-class functions, ordinary and extensible algebraic data types, pattern matching, references, exceptions, and effect handlers. We define the dynamic semantics of OLang as a monadic interpreter. This interpreter runs atop a custom monad where computations are internally represented as trees of operations and equipped with a small-step semantics. We define two program logics for OLang. A stateless Hoare Logic allows reasoning about so-called “pure” programs; an Iris-based Separation Logic allows reasoning about arbitrary programs. We present the construction of the two logics as well as some examples of their use.

链接与引用

DOI 原文 ·

BibTeX
@article{paperbot3041,
  title = {Formal Semantics and Program Logics for a Fragment of OCaml},
  author = {Remy Seassau and Irene Yoon and Jean-Marie Madiot and François Pottier},
  journal = {Proceedings of the ACM on Programming Languages},
  volume = {9},
  number = {ICFP},
  year = {2025},
  doi = {10.1145/3747509}
}