# Tampiorama # # An index of annotated Tampio examples. # This page is itself a Tampio program — the source on the left # is what generates the links and descriptions on the right. # # "nykyinen sivu näyttää tekstin X" = document.write(X) # Hei maailma — Hello World # # The simplest Tampio program. # Entry point: Kun nykyinen sivu avautuu = When the current page opens # "näytetään käyttäjälle" triggers a browser alert. # Kertoma — Factorial # # Recursive factorial using the ternary: # riippuen siitä ... joko ... tai # = depending on whether ... either ... or # Multiplication uses adessive case: kerrottuna kertomalla # Fibonacci-kani — Fibonacci # # Recursive Fibonacci named "kani" (rabbit), # after Fibonacci's original rabbit problem from 1202. # Addition uses illative case: lisättynä kaniin # n-2 computed by chaining: edeltäjän edeltäjä # Lista — List Operations # # Built-in lista type: size, first element, iteration, # ascending and descending sort. # Vektori — Custom Class # # User-defined class with fields and recursive methods. # Euclidean length of vector [3,4] = 5. # Merkkijono — Strings # # Length, concatenation, trim, and comma-split. # Nappi — DOM Events # # Click handlers with "X:tä painettaessa käyköön niin, että". # Mutable counter state persists across button clicks. Kun nykyinen sivu avautuu, nykyinen sivu näyttää tekstin "

Tampiorama

", nykyinen sivu näyttää tekstin "

Annotated examples for Tampio, a natural-language OOP language using Finnish grammar that compiles to JavaScript.

", nykyinen sivu näyttää tekstin "

Basics

", nykyinen sivu näyttää tekstin "

Hei maailma →

", nykyinen sivu näyttää tekstin "

Hello world. Page-load entry point, browser alert.

", nykyinen sivu näyttää tekstin "

Open the page — it will alert 'Hei maailma!' immediately.

", nykyinen sivu näyttää tekstin "

Kertoma →

", nykyinen sivu näyttää tekstin "

Recursive factorial. Ternary branching, adessive multiplication.

", nykyinen sivu näyttää tekstin "

Open the page — enter a number when prompted, e.g. 5, and see 120.

", nykyinen sivu näyttää tekstin "

Fibonacci-kani →

", nykyinen sivu näyttää tekstin "

Recursive Fibonacci. Illative addition, predecessor chaining.

", nykyinen sivu näyttää tekstin "

Open the page — enter a number when prompted, e.g. 10, and see 55.

", nykyinen sivu näyttää tekstin "

Data Structures

", nykyinen sivu näyttää tekstin "

Lista →

", nykyinen sivu näyttää tekstin "

Built-in list: size, first element, ascending and descending sort.

", nykyinen sivu näyttää tekstin "

Open the page — see the list [3,1,4,1,5] sorted both ways.

", nykyinen sivu näyttää tekstin "

Vektori →

", nykyinen sivu näyttää tekstin "

Custom class with fields and recursive methods. Euclidean length of [3,4] = 5.

", nykyinen sivu näyttää tekstin "

Open the page — see dimension, sum, and Euclidean length of vector [3,4].

", nykyinen sivu näyttää tekstin "

Strings

", nykyinen sivu näyttää tekstin "

Merkkijono →

", nykyinen sivu näyttää tekstin "

String length, concatenation, trim, and comma-split iteration.

", nykyinen sivu näyttää tekstin "

Open the page — see string ops applied to 'Hei, Tampio!'.

", nykyinen sivu näyttää tekstin "

Async / Events

", nykyinen sivu näyttää tekstin "

Nappi →

", nykyinen sivu näyttää tekstin "

DOM click handlers. Mutable counter state persists across button clicks.

", nykyinen sivu näyttää tekstin "

Open the page — click +1 or +10 and watch the counter update.

", nykyinen sivu näyttää tekstin "

Program

", nykyinen sivu näyttää tekstin "

Kasvutaulukko →

", nykyinen sivu näyttää tekstin "

Capstone: recursive functions, list iteration, and a click handler together.

" ja nykyinen sivu näyttää tekstin "

Open the page — see factorial and Fibonacci for n=1..7, then enter any n for both values.

".