Retour au classement

FStarLang/FStar

F*fstar-lang.org

A Proof-oriented Programming Language

programming-languageverificationdependent-typessmttheorem-provingproof-assistantocamlf-sharpc-languagefstarinteractive-theorem-provingdijkstra-monads
Croissance des étoiles
Étoiles
3.1k
Forks
258
Croissance hebdomadaire
Issues
495
1k2k3k
avr. 2014mai 2018juin 2022juil. 2026
README

F*: A Proof-oriented Programming Language

F* website

More information on F* can be found at www.fstar-lang.org

Installation

See INSTALL.md

Online book

An online book Proof-oriented Programming In F* is available and updates are posted online periodically. The book is available as a PDF, or you can read it while trying out examples and exercises in your browser interface from this tutorial page.

Editing F* code

You can edit F* code using various text editors, with Emacs and VSCode currently having the most substantial support, including syntax highlighting, code completion and navigation, and incremental, interactive development.

More details on editor support are available on the F* wiki.

AI Agents

AI agents are proficient at using F* and Pulse.

Especially if you are using Copilot CLI or Claude Code, we recommend installing the proof-copilot plugin, which provides agents and skills with prompts for specific features of the language and its tooling.

Extracting and executing F* code

By default F* only verifies the input code, it does not compile or execute it. To execute F* code one needs to translate it for instance to OCaml or F#, using F*'s code extraction facility---this is invoked using the command line argument --codegen OCaml or --codegen FSharp. More details on executing F* code via OCaml on the F* wiki.

Also, code written in Pulse, a DSL in F* for concurrent, imperative programming, can be extracted to C or Rust by the KaRaMeL tool.

Additionally, code written in an ASM-like deeply embedded DSL can be extracted to ASM by the Vale tool.

Chatting about F* on Zulip

F* developers and users can chat about F* or ask questions at this Zulip forum.

(An older forum on Slack is no longer used.)

Reporting issues

Please report issues using the F* issue tracker on GitHub. Before filing please search to make sure the issue doesn't already exist. We don't maintain old releases, so if possible please use the online F* editor or directly the GitHub sources to check that your problem still exists on the master branch.

Other Documentation

The F* wiki contains additional technical documentation on F*, and is especially useful for topics that are not yet covered by the book.

Contributing

See CONTRIBUTING.md

License

F* is released under the Apache 2.0 license; for more details see LICENSE

Dépôts similaires
golang/go

The Go programming language

GoGo ModulesBSD 3-Clause "New" or "Revised" Licenseprogramming-languagelanguage
go.dev
135.3k19.3k
JetBrains/kotlin

The Kotlin Programming Language.

Kotlinkotlinprogramming-language
kotlinlang.org
53.2k6.4k
charlax/professional-programming

A collection of learning resources for curious software engineers

PythonPyPIMIT Licenseread-articlesprogrammer
51.3k4k
JuliaLang/julia

The Julia Programming Language

JuliaMIT Licensejulia-languagejulia
julialang.org
48.9k5.9k
LeCoupa/awesome-cheatsheets

👩‍💻👨‍💻 Awesome cheatsheets for popular programming languages, frameworks and development tools. They include everything you should know in one single file.

JavaScriptnpmMIT Licensecheatsheetsjavascript
lecoupa.github.io/awesome-cheatsheets/
46.2k6.7k
vlang/v

Simple, fast, safe, compiled language for developing maintainable software. Compiles itself in <1s with zero library dependencies. Supports automatic C => V translation. https://vlang.io

VMIT Licenseprogramming-languagelanguage
37.7k2.3k
carbon-language/carbon-lang

Carbon Language's main repository: documents, design, implementation, and related tools. (NOTE: Carbon Language is experimental; see README)

C++Otherprogramming-languagecarbon-lang
docs.carbon-lang.dev
33.8k1.6k
modular/modular

The Modular Platform (includes MAX & Mojo)

MojoOtherailanguage
docs.modular.com
26.6k2.9k
argotorg/solidity

Solidity, the Smart Contract Programming Language

C++GNU General Public License v3.0cppethereum
soliditylang.org
25.7k6.1k
ethereum/solidity

Solidity, the Smart Contract Programming Language

C++GNU General Public License v3.0cppethereum
soliditylang.org
24k6k
modular/max

The MAX Platform (includes Mojo)

MojoOtherailanguage
docs.modular.com/max/
23.8k2.6k
ruby/ruby

The Ruby Programming Language

RubyRubyGemsOtherrubyc
ruby-lang.org
23.7k5.6k