Trisha Shetty (Editor)

F* (programming language)

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit
Stable release
  
repository

License
  
Apache 2.0 License

F* (programming language)

Paradigm
  
multi-paradigm: functional, imperative, formal verification

Designed by
  
Microsoft Research, MSR-Inria, and Inria

Typing discipline
  
static, strong, inferred, dependent types, formal verification

OS
  
Cross-platform (Windows, OS X, and Linux)

F* (pronounced F star) is a functional programming language inspired by ML and aimed at program verification. Its type system includes dependent types, monadic effects, and refinement types. This allows expressing precise specifications for programs, including functional correctness and security properties. The F* type-checker aims to prove that programs meet their specifications using a combination of SMT solving and manual proofs. Programs written in F* can be translated to OCaml, F#, and C for execution. Previous versions of F* could also be translated to JavaScript.

The latest version of F* is written entirely in F*, and bootstraps in OCaml and F#. It is open source (under the Apache 2.0 License) and is under active development on GitHub.

References

F* (programming language) Wikipedia