# Tampiorama v1.0 First release of Tampiorama — an annotated example showcase for [Tampio](https://github.com/fergusq/tampio), a natural-language OOP language that uses Finnish grammar and compiles to JavaScript. ## What's included ### Examples Eight working, annotated `.itp` programs covering the breadth of the language: | Example | Demonstrates | |---------|-------------| | `basics/hello.itp` | Page-load entry point, browser alert | | `basics/factorial.itp` | Recursive methods, ternary branching | | `basics/fibonacci.itp` | Recursion, predecessor chaining for n-2 | | `data-structures/lista.itp` | Built-in list: iteration, sorting | | `data-structures/vektori.itp` | Custom class with fields and recursive methods | | `strings/merkkijono.itp` | String length, concat, trim, comma-split | | `async/nappi.itp` | DOM click handlers, mutable state | | `program/kasvutaulukko.itp` | Recursion and list iteration combined | ### Documentation - `docs/cheatsheet.md` — Finnish grammatical cases mapped to their roles in Tampio syntax, full arithmetic operator reference - `docs/vs-javascript.md` — Side-by-side Tampio and JavaScript comparisons - `docs/install.md` — Local setup without Docker (Ubuntu/Debian and macOS) - `docs/testing.md` — Step-by-step guide for verifying each example ### Infrastructure - Docker + `docker-compose.yml` — zero-setup environment with libvoikko and fi-x-morpho dictionary included - `Makefile` — builds all `.itp` sources to `.html` with `make` - Compiled HTML excluded from version control — only Tampio source is committed ## Getting started ```sh git clone https://github.com/fergusq/tampiorama.git cd tampiorama make python3 -m http.server 9994 --directory examples ``` Open `http://localhost:9994/basics/index.html`. ## Notes - Tampio method names must be single Finnish words that the Voikko morphology library can inflect — this shapes what's possible and is documented throughout the examples - The Docker image handles the `libvoikko` and `fi-x-morpho` dictionary setup automatically; see `docs/install.md` for native installation