The tutorials to Grisette is provided as jupyter notebooks with the IHaskell kernel. You may run the notebooks with the following command (assuming you've already installed the IHaskell):
stack install --fast
ihaskell install --stack
stack exec jupyter -- notebook
Currently, there are three tutorials available:
- Solve-Aided Programming with Grisette. This tutorial introduces the symbolic values in Grisette and how to use them to write solve-aided programs.
- UnionM and Custom Data Types. This tutorial introduces the
UnionM
monad, which is at the core of Grisette for handling multi-path execution, and how to use it to work with custom data types in Grisette. - Using Monad Transformers with Grisette. This tutorial introduces monad transformers and how to use them with Grisette to build advanced program reasoning tools with error and state handling.