<div class="notebook">
<div class="nb-cell markdown" name="md1">
# Prolog tutorials
This notebook collects Prolog tutorials provided as SWISH notebooks. Note that you can find other Prolog tutorials from the *Tutorials* menu at
the [SWI-Prolog home page](https://www.swi-prolog.org).
## Core SWI-Prolog tutorials
- [Using SWI-Prolog version 7 dicts](example/dict.swinb)
- [Using tabling in SWI-Prolog](example/tabling.swinb)
- [Rational number (ℚ) support](example/rational.swinb)
- [IEEE-754 Floating point support](example/IEEE754.swinb)
## Extensions and packages
```eval
:- if(exists_source(library(clpBNR))).
:- format(' - [clpBNR: Constraint Logic Programming over Booleans, Integers and Reals](example/clpBNR_quickstart.swinb)~n').
:- endif.
```
---
## Submitting a tutorial
If you wish to submit a tutorial, create it on http://swish.swi-prolog.org as a new
notebook. Next, you have two options:
- Download the notebook to your computer using *File/Download*, fork
https://github.com/SWI-Prolog/swish.git and add the notebook to the `examples`
directory and edit `examples/prolog_tutorials.swinb`. Finally, create
a *pull request*.
- Send a mail to jan@swi-prolog.org with a link to your tutorial.
</div>
</div>