# Contracts Language ZF\*

ZF\* is the smart contracting language for the Zen Protocol.\
ZF\* is a dialect of the [F\* language](https://www.fstar-lang.org/).

### Prerequisites

Before beginning to develop with ZF\*, it is worth developing familiarity with a statically typed functional language, such as [F#](https://fsharp.org/), [OCaml](https://ocaml.org/), or [Haskell](https://www.haskell.org/).\
\
It's worth skimming through the [F\* tutorial](https://www.fstar-lang.org/tutorial/). Note that the F\* tutorial also assumes familiarity with F#, OCaml, or Haskell.

#### Recommended resources

F# ( Online )\
&#x20; \* [F# Programming WikiBook](https://en.wikibooks.org/wiki/F_Sharp_Programming)\
&#x20; \* [F# for C#, Java or Python developers](https://fsharpforfunandprofit.com/)\
&#x20; \* [F# Cheat Sheet\
&#x20;](http://dungpa.github.io/fsharp-cheatsheet/) \* [Learn F# in Y Minutes](https://learnxinyminutes.com/docs/fsharp/)\
\
F# ( Books )\
&#x20; \* [Real-World Functional Programming](https://www.amazon.com/Real-World-Functional-Programming-Tomas-Petricek/dp/1933988924)\
&#x20; \* [Expert F# 4.0](https://www.amazon.com/Expert-F-4-0-Don-Syme/dp/1484207416)\
\
OCaml ( Online )\
&#x20; \* [OCaml Tutorials](https://ocaml.org/learn/tutorials/)\
&#x20; \* [Real World OCaml](http://dev.realworldocaml.org/) (Dev version)\
\
OCaml ( Books )\
&#x20; \* [Real World OCaml](https://www.amazon.com/Real-World-OCaml-Functional-programming/dp/144932391X) (Slightly out of date. Use the online dev version for more up-to-date information)\
\
Haskell ( Online )\
&#x20; \* [Learn You a Haskell for Great Good!](http://learnyouahaskell.com/chapters)\
\
Haskell ( Books )\
&#x20; \* [Learn You a Haskell for Great Good!](http://learnyouahaskell.com/chapters)
