diff --git a/RELEASE.md b/RELEASE.md new file mode 100644 index 0000000..cc47933 --- /dev/null +++ b/RELEASE.md @@ -0,0 +1,49 @@ +# 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 diff --git a/usage-examples/Factorial (2) for Imperatiivinen Tampio.png b/usage-examples/Factorial (2) for Imperatiivinen Tampio.png new file mode 100644 index 0000000..3a3abb6 Binary files /dev/null and b/usage-examples/Factorial (2) for Imperatiivinen Tampio.png differ diff --git a/usage-examples/Factorial for Imperatiivinen Tampio.png b/usage-examples/Factorial for Imperatiivinen Tampio.png new file mode 100644 index 0000000..0cfde51 Binary files /dev/null and b/usage-examples/Factorial for Imperatiivinen Tampio.png differ diff --git a/usage-examples/Fibonacci (2) for Imperatiivinen Tampio.png b/usage-examples/Fibonacci (2) for Imperatiivinen Tampio.png new file mode 100644 index 0000000..0567d1b Binary files /dev/null and b/usage-examples/Fibonacci (2) for Imperatiivinen Tampio.png differ diff --git a/usage-examples/Fibonacci for Imperatiivinen Tampio.png b/usage-examples/Fibonacci for Imperatiivinen Tampio.png new file mode 100644 index 0000000..d33b2ae Binary files /dev/null and b/usage-examples/Fibonacci for Imperatiivinen Tampio.png differ diff --git a/usage-examples/Hello (2) for Imperatiivinen Tampio.png b/usage-examples/Hello (2) for Imperatiivinen Tampio.png new file mode 100644 index 0000000..5733e67 Binary files /dev/null and b/usage-examples/Hello (2) for Imperatiivinen Tampio.png differ diff --git a/usage-examples/Hello for Imperatiivinen Tampio.png b/usage-examples/Hello for Imperatiivinen Tampio.png new file mode 100644 index 0000000..75c2099 Binary files /dev/null and b/usage-examples/Hello for Imperatiivinen Tampio.png differ diff --git a/usage-examples/Index (2) for Imperatiivinen Tampio.png b/usage-examples/Index (2) for Imperatiivinen Tampio.png new file mode 100644 index 0000000..032618b Binary files /dev/null and b/usage-examples/Index (2) for Imperatiivinen Tampio.png differ diff --git a/usage-examples/Index for Imperatiivinen Tampio.png b/usage-examples/Index for Imperatiivinen Tampio.png new file mode 100644 index 0000000..0627b09 Binary files /dev/null and b/usage-examples/Index for Imperatiivinen Tampio.png differ diff --git a/usage-examples/Kasvutaulukko for Imperatiivinen Tampio.png b/usage-examples/Kasvutaulukko for Imperatiivinen Tampio.png new file mode 100644 index 0000000..2f313ea Binary files /dev/null and b/usage-examples/Kasvutaulukko for Imperatiivinen Tampio.png differ diff --git a/usage-examples/Lista for Imperatiivinen Tampio.png b/usage-examples/Lista for Imperatiivinen Tampio.png new file mode 100644 index 0000000..4dc4414 Binary files /dev/null and b/usage-examples/Lista for Imperatiivinen Tampio.png differ diff --git a/usage-examples/Merkkijono for Imperatiivinen Tampio.png b/usage-examples/Merkkijono for Imperatiivinen Tampio.png new file mode 100644 index 0000000..00a60cb Binary files /dev/null and b/usage-examples/Merkkijono for Imperatiivinen Tampio.png differ diff --git a/usage-examples/Nappi for Imperatiivinen Tampio.png b/usage-examples/Nappi for Imperatiivinen Tampio.png new file mode 100644 index 0000000..f970aff Binary files /dev/null and b/usage-examples/Nappi for Imperatiivinen Tampio.png differ diff --git a/usage-examples/Vektori for Imperatiivinen Tampio.png b/usage-examples/Vektori for Imperatiivinen Tampio.png new file mode 100644 index 0000000..6c89872 Binary files /dev/null and b/usage-examples/Vektori for Imperatiivinen Tampio.png differ