Funktionaalista ohjelmointia Olarin lukiossa

22.05.2018

Viidennessä jaksossa joukko Olarin yläkoulun ja espoolaisten lukioiden oppilaita perehtyi Olarin lukiossa ohjelmoinnin perusteisiin ja ohjelmoinnilliseen ajatteluun hieman perinteisestä poikkeavasta näkökulmasta. Tietotekniikan opettajaopiskelija Eeva Mäkelä ja Aalto-yliopistossa tietotekniikkaa opiskeleva Joonatan Saarhelo pitivät Olarissa funktionaalisen ohjelmoinnin kurssin.

Kurssilla toteuttu klassinen Sokoban-peli, jossa pelaajan (@-merkki) tehtävänä on siirtää ympyröillä esitetyt ”kivet” mustiin neliöihin eli ”kuoppiin”. Pelaajaa liikutetaan nuolinäppäimillä ja hän siirtää kiviä työntämällä niitä edessään.

Kurssin opetuskielenä oli puhtaasti funktionaalinen Elm-kieli. Elm on funktionaalisen kieliperheen uusi tulokas, joka on kehitetty erityisesti webbisovellusten ohjelmointiin. Elmin tavoitteena on olla helposti omaksuttava ja käyttäjäystävällinen kieli.

Elm-kurssille osallistui vasta-alkajia ja jo kokeneita ohjelmoijia. Koska Elm-kielelle ei ole olemassa aloittelijoille sopivaa opetusmateriaalia, Eeva oli kehittänyt kurssia varten oppimateriaalin, jota samalla testattiin. Lisäksi opiskelijat pääsivät myös kokeilemaan visuaalista ohjelmointiympäristöä, jota Joonatan kehittää.

Kurssilaiset perehtyivät ohjelmoinnin perusteisiin, Elm-kielen rakenteisiin sekä ohjelmoinnilliseen ajatteluun ja ongelmanratkaisuun, joiden tukena käytettiin funktion suunnittelun reseptiä. Lopuksi pisimmälle edistyneet tutustuivat Elmin tapahtumienkäsittelijöihin ja toteuttivat interaktiivisen pelin. Kurssilla syntyi esimerkiksi ohjelmia, jotka simuloivat Life-soluautomaattia (Conway’s Game of Life).

Life-soluautomaatti on edennyt testikäyttöön.

”Kiitos kurssilaisille! Oli hienoa opettaa innostuneita ja aidosti kiinnostuneita oppilaita”, kiittelee Eeva. Hän kertoo, että tunneilla kysyttiin paljon kysymyksiä ja käytiin hyviä keskusteluja.