Scheme-harjoituskurssi

Tehtävänanto

  1. Tee funktio, joka ottaa suomenkielisen merkkijonon ja palauttaa uuden merkkijonon, joka on muuten sama kuin edellinen, mutta siihen on lisätty viivat sanansisäisille tavurajoille.

    Esimerkiksi (tavuta helppo hymyillä) palauttaa help-po hy-myil-lä.

  2. Tee risti ja nolla -pelin toteutus, jossa laudan tilaa pidetään matriisissa (taulukoiden pohjalta tehdyt matriisitoteutukset esimerkeissä). Peli kysyy siirtoja vuorotellen kummiltakin pelaajilta, näyttää laudan aina siirron jälkeen ja ilmoittaa, kun jompikumpi voittaa. Esimerkeissä on myös funktiomäärittely, jolla voi lukea yhden rivin, read-line. (Schemen ainoa varsinainen syötteenlukuprimitiivi on read-char…)

Toista tehtävää ei ole aivan pakko tehdä, jos jo ensimmäinen aiheuttaa kohtuuttomasti vaivaa.

Kurssin omaa materiaalia

Ulkopuolista materiaalia

http://www.schemers.org/
Tietoa ja resursseja kaikille scheme-harrastajille. Sisältää linkit lukuisiin muihin hyödyllisiin paikkoihin ja hostaa R5RS:a sekä SRFI:eita.
R5RS
Revised^5 Report on algorithmic language Scheme. Ehdottomasti pakko käyttää, jotta saa mitään aikaan. Selkeä, mutta hyvin virallinen. Aloittelijalle tai kiireiselle ehkä eniten on hyötyä luvuista 4 (expressions) ja 6 (standard procedures).
Scheme-johdatus
Melko selkeä, perustavanlaatuinen muttei kovin perinpohjainen johdatus. Kannattaa katsoa ainakin osiot let-rakenteesta ja rekursiosta, koska niistä on paljon hyötyä.
http://www.htdp.org/
How To Design Programs: perusteellinen oppikirja Scheme-kieleen. Paljon lukemista, mutta opetusmielessä erittäin hyvä.
http://www.plt-scheme.org/
Täältä löytyy DrSchemen dokumentaatio.
http://www.scsh.net/
Täältä löytyy scsh:n, skriptausorientoituneen Schemen, dokumentaatio. scsh on erittäin hyvä väline, jos haluaa tehdä skriptejä Unix-ympäristöön tai testata ohjelmiensa standardinmukaisuutta (R5RS).