A Proof-oriented Programming Language
F* is a proof-oriented programming language designed for program verification and formal methods. Built on dependent types, SMT solvers, and theorem-proving capabilities, it enables developers to write code alongside machine-checked proofs of correctness. The language is implemented in OCaml and F#, with code extraction to OCaml, F#, C, and Rust, supported by complementary tools like KaRaMeL for C/Rust extraction and Vale for assembly. F* is developed by FStarLang, an active open-source community, and includes Pulse, a separation logic DSL for concurrent imperative programming, alongside comprehensive documentation in the form of an online book and editor support for Emacs and VS Code.