# Docs

-   [IO](io.html) - How input and output work.
-   [Syntax](syntax.html) - Syntax and desugaring including stack ops/vars.
-   [Types](types.html) - Behavior of the different types and op overloading.
-   [Vectorization](vectorization.html) - How vectorization works.
-   [Circular Programming](circularprogramming.html) - How looping works and how to use these techniques in Haskell.
-   [Ops](ops.html) - Description of the non-trivial ops.
-   [Examples](examples.html) - Worked examples that demonstrate how to practically write iogii programs.
-   [Why](why.html) - Why I made iogii and why you might want to use it.

A note on reading order: you can write real programs after the main page overview. The rest completely cover every idiosyncrasy of the language that you would need to know to competitively golf in it.

Lynn has also created an [iogii tutorial](https://lynn.github.io/iogii-docs). Thank you for the fresh perspective.