OCaml F# C Makefile Python Shell Other
Switch branches/tags
Permalink
Failed to load latest commit information.
.ci git push to fstarlang.github.io using ssh protocol. Feb 23, 2017
.completion Add command line completion for fstar.exe options Jul 26, 2017
.docker Dockerfile: restore the bootstrap step of the build Feb 3, 2017
.hooks Revert "[CI] regenerate hints + ocaml snapshot" Jan 27, 2017
.scripts ***NO_CI*** fixing up regressions in query-stats Aug 10, 2017
bin Clean up the fstarlib mess Aug 4, 2017
doc hints Aug 1, 2017
examples [CI] regenerate hints + ocaml snapshot Aug 12, 2017
src Un-ignore some hand-written files Aug 17, 2017
ucontrib Fix OpenSSL configuration for HACL* on Windows ***NO_CI*** Aug 9, 2017
ulib [CI] regenerate hints + ocaml snapshot Aug 12, 2017
.gitattributes Make whitespace consistent for .mdk files too ***NO_CI*** May 11, 2017
.gitignore Clean up the fstarlib mess Aug 4, 2017
.gitmodules Revert "[CI] regenerate hints + ocaml snapshot" Jan 27, 2017
.ignore Un-ignore some hand-written files Aug 17, 2017
.merlin Add a .merlin file Jul 29, 2017
.travis.yml Revert "[CI] regenerate hints + ocaml snapshot" Jan 27, 2017
CHANGES.md changes Aug 13, 2017
INSTALL.md Update INSTALL.md Jul 11, 2017
LICENSE Revert "[CI] regenerate hints + ocaml snapshot" Jan 27, 2017
LICENSE-fsharp.txt Revert "[CI] regenerate hints + ocaml snapshot" Jan 27, 2017
Makefile A Makefile at the root of F* ***NO_CI*** Aug 9, 2017
README.md fstar-pub archive now searchable May 18, 2017
_tags Adress nits Aug 4, 2017
version.txt Bump version number Apr 12, 2017

README.md

F*: An ML-like language aimed at program verification

Build status

F* website

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

Installation

See INSTALL.md

Tutorial

The F* tutorial provides a first taste of verified programming in F*, explaining things by example.

Wiki

The F* wiki contains additional, usually more in-depth, technical documentation on F*.

Editing F* code

You can edit F* code using your favourite text editor, but Emacs, Atom, and Vim have extensions that add special support for F*, including syntax highlighting and interactive development. More details on editor support on the F* wiki.

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 to either 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 on the F* wiki.

Community mailing list

The fstar-club mailing list is dedicated to F* users. Here is where all F* announcements are made to the general public (e.g. for releases, new papers, etc) and where users can ask questions, ask for help, discuss, provide feedback, announce jobs requiring at least 10 years of F* experience, etc.

List archives are public and searchable, but only members can post. Join here!

Slack channel

Users can also ask questions on the #fstar Slack channel at http://fpchat.com/

Reporting issues

Please report issues using the F* issue tracker on GitHub. Before filing please use 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.

Blog

The F* for the masses blog is also expected to become an important source of information and news on the F* project.

License

This new variant of F* is released under the Apache 2.0 license; see LICENSE for more details.

Towards F* version 1.0

This is a new variant of F* (carrying version 0.9.x) that is still in development and we hope will eventually lead to a 1.0 release. This new variant is incompatible and quite different compared to the previously released 0.7 versions and earlier.

Old F* versions (v0.7.1 and earlier)

F* v0.7.1 and earlier are no longer maintained, so please do not create any issues here about those versions.