Haskell Workshop

582355
1-4
Ohjelmistojärjestelmät
Aineopinnot
Suomeksi: Tällä kurssilla tutustutaan edistyneempään Haskell-ohjelmointiin. Käsiteltäviä aiheita ovat mm. rinnakkaisuus, profilointi ja optimointi sekä funktionaalinen suunnittelu. Kurssi on jatkoa Johdatus Funktionaaliseen Ohjelmointiin -kurssille. Kurssin on työpajamuotoinen ja sen voi suorittaa joustavasti 1-4op laajuisena. In English: This course focuses on advanced Haskell programming. Topics covered include parallelism, profiling and optimization and functional design. The course is organized as a workshop and yields 1-4 credits depending on the number of exercises completed.
Vuosi Lukukausi Päivämäärä Periodi Kieli Vastuuhenkilö
2012 kesä 18.05-08.06. 5-5 Suomi Joel Kaasinen

Luennot

Aika Huone Luennoija Päivämäärä
Pe 12-16 B221 Joel Kaasinen 18.05.2012-08.06.2012

Opetusajat sovitaan opiskelijoiden kanssa ennen kurssin alkua.

Teaching times will be agreed with the students before the course starts.

Information for international students

 Contact me (joel dot kaasinen at cs.helsinki.fi) if you are interested in participating in English!

Yleistä

HUOM! tapaamisten sali onkin BK107!

Kurssi koostuu neljästä viikosta. Jokaisella viikolla on neljän tunnin tapaaminen, joka koostuu kevyestä luennoinnista ja tehtäviin tutustumisesta. Tämän jälkeen tehtävien tekemistä jatketaan itsenäisesti. Jokainen viikko käsittelee eri aihetta, ja viikot ovat suhteellisen itsenäisiä.

Alustava aihelistaus

  1. Profilointi ja optimointi
  2. Rinnakkaisuus
  3. Tehokas puhdas IO: Iteratee
  4. Funktionaalinen suunnittelu ja tyyppijärjestelmän edistynyt käyttö

Tapaamisajat

Kurssi tapaamiset ovat perjantaisin klo 12-16. Tapaamisia on neljä: 18.5., 25.5., 1.6. ja 8.6.

Tapaamisten sali ilmoitetaan myöhemmin.

Huom! Tapaamisajasta äänestäminen on auki täällä: http://www.doodle.com/as6g6vepk6t9yu2r . Olisi kiva jos äänestäisitte omilla nimillänne.

IRC-kanava

Kurssin IRC-kanava on #jfo2012 IRCNetissä. Kanavalla tarjolla tukea tehtävien tekemiseen ja keskustelua kurssin tiimoilta.

Kurssin suorittaminen

 Kurssi suoritetaan harjoitustehtävillä. Kurssista saa opintopisteitä 1-4 tehtyjen tehtävien määrän mukaan. 

Pisterajat

  1. 10-18 tehtävää
  2. 19-27 tehtävää
  3. 28-36 tehtävää
  4. 37-44 tehtävää

Tulokset

Kesälomista johtuen tulokset kirjautuvat Oodiin vasta heinäkuun loppupuolella. Tässä kuitenkin virallinen tuloslista: checklist-hw.txt

Kirjallisuus ja materiaali

 

Tapaamisten muistiinpanot

Tehtävät

  • Palautusjärjestelmä
  • Viikko 1: X1.hs
    • Deadline 27.5. 23:59
    • Korjattu countin paluutyyppi 18.5.
    • Tarkennettu count-tehtävän huomautusta ja korjattu typo (foldr' => foldl') viimeisestä tehtävästä 24.5.
    • Korjattu viimeisen tehtävän numero 11:ksi 24.5.
    • Mallivastaus: X1Sol.hs
  • Viikko 2: X2.hs
  • Viikko 3: X3.hs
    • Deadline 10.6. 23:59
    • Korjattu tehtävänantoon jäänyt XXX 4.6.
    • Korjattu kasa typoja 4.6.
    • Mallivastaus: X3Sol.hs
  • Viikko 4: X4.hs
    • Deadline 17.6. 23:59
    • Lisätty MultiParamTypeClasses ja korjattu tehtävä 7&8 11.6.
    • Korjattu Find String String muotoon Find [Char] [Char] 12.6.
    • Mallivastaus: X4Sol.hs

Linkkejä