Named after a famous Finnish programmer
December 27, 2017 6:28 AM   Subscribe

Tampio is an object-oriented programming language that looks like a natural language – Finnish. [It] is an object-oriented language that compiles to JavaScript. Its syntax is directly inspired by the Finnish language and is therefore based on inflecting words.

Quite a bit of effort has been made to make Tampio work. It rides on the libvoikko spell-checking library to deal with Finnish morphology. Interestingly, programs written in Tampio read very much like lemmas in a Finnish math textbook. I suspect this has been the author's intention.

Of course, like most programming languages trying too hard to imitate natural language, Tampio is wholly unsuited for doing any kind of actual work.

Tangentially, an interesting use case for natural language programming that actually has resulted in something usable is Inform 7, used to create "interactive fiction" (text-based adventure games). Inform 7 previously.
posted by Soi-hah (15 comments total) 26 users marked this as a favorite
 
It’s as if AppleScript was designed by Satan, much like our native Finnish language is.
posted by jklaiho at 7:07 AM on December 27, 2017 [18 favorites]


and I gotta say I’m disappointed that the language doesn’t yet have the canonical tech cool kid domain of tamp.io
posted by jklaiho at 7:10 AM on December 27, 2017 [3 favorites]


It's neat how it resembles poetry as a result:
Pienen luvun kertoma on
	riippuen siitä, onko pieni luku pienempi tai yhtä suuri kuin yksi,
	joko pieni luku
	tai pieni luku kerrottuna pienen luvun edeltäjän kertomalla.

Luonnollisen luvun edeltäjä on luonnollinen luku vähennettynä yhdellä.

Olkoon pieni muuttuja uusi muuttuja, jonka arvo on nolla.
Pieniä Sieviä Sieniä
pakoputki moottoritielle pudonnut
pakoputki - me, tie - elämämme
pakoputki moottoritielle pudonnut
kuunari ahdin syliin langennut
laiva - me, maa - elämämme
kuunari ahdin syliin langennut

elämän ja meidän väliin pääsi vähän hometta
nyt siellä kasvaa pieniä sieviä sieniä

posted by fraula at 7:20 AM on December 27, 2017 [5 favorites]


Oh, I see they've released Perl 7 ahead of time.
posted by mikelieman at 7:23 AM on December 27, 2017 [23 favorites]


Your scientists were so preoccupied with whether or not they could, they didn’t stop to think if they should.
posted by SansPoint at 7:38 AM on December 27, 2017 [10 favorites]


LOL,

use Lingua::Romana::Perligata;
 
                      maximum tum val inquementum
                tum biguttam tum stadium egresso scribe.
                             da meo maximo
                        vestibulo perlegementum.
 
            maximum comementum tum novumversum egresso scribe.
                              meis listis
                   conscribementa II tum maximum da.
                       dum damentum nexto listis
                           decapitamentum fac
 
               sic lista sic hoc tum nextum recidementum
                       cis vannementa listis da.
                 dictum sic deinde cis tum biguttam tum
                         stadium tum cum nextum
               comementum tum novumversum scribe egresso.
                                  cis
Why your lang whitespace sensitive?
posted by zengargoyle at 7:45 AM on December 27, 2017 [1 favorite]


Many times I have thought, while writing Javascript, “if only there were a way to make this more like Finnish”.
posted by thelonius at 8:24 AM on December 27, 2017 [10 favorites]


You've buried the lede! Tampio provides a trivial solution to the Halting Problem: its programs always Finnish.
posted by jedicus at 8:38 AM on December 27, 2017 [54 favorites]


> the language doesn’t yet have the canonical tech cool kid domain of tamp.io

I would be happier if they went for tampioioio.io
posted by ardgedee at 8:50 AM on December 27, 2017


though yodelling is more a Swiss thing than a Finnish one if I understand correctly
posted by flabdablet at 8:53 AM on December 27, 2017 [1 favorite]


Tampio provides a trivial solution to the Halting Problem: its programs always Finnish.

If I had the power to do so I would remove your posting privileges forever, but now all I can do is sigh, look out the window and wait for these dark times to end.

A good pun.
posted by Soi-hah at 9:08 AM on December 27, 2017 [4 favorites]


Hmm, should this be integrated with Korso-SQL https://janit.iki.fi/shit/korsosql.html we would have more complete full stack programming env, now with (optional) profanity.
posted by costello at 9:34 AM on December 27, 2017 [1 favorite]


is the front end finished yet?
why yes.... yes it is 😈
posted by kokaku at 11:14 AM on December 27, 2017 [1 favorite]


I see someone beat me to the Lingua::Romana::Perligata reference.

This week I've been on a Harry Potter binge. I could see them teaching perl at Hogwarts.
posted by sbutler at 11:57 AM on December 27, 2017 [1 favorite]


Halting Problem: it is impossible to determine whether an arbitrary computer program will eventually terminate.

Solution: model your programming language after Finnish.
posted by Riki tiki at 12:51 PM on December 27, 2017 [2 favorites]


« Older How to Say ‘Orgasm’ in 27 Different Languages   |   In the Late Anthropocene Newer »


This thread has been archived and is closed to new comments