Yliopiston etusivulle Suomeksi
Helsingin yliopisto
ctl272: Prolog-ohjelmointikieli - kevät 2005

Yhteystiedot:

Osoite:
Yleisen kielitieteen laitos
PL 9
Siltavuorenpenger 20A
00014 Helsingin yliopisto

Puhelin: +358 (09) 1911 (vaihde)
Faksi: +358 (09) 191 29307

Kurssin materiaali

Yleistä materiaalia

Työkaluista

Kurssilla käytetään Sicstus Prolog -ohjelmaa. Se käynnistyy laitoksen Unix-järjestelmissä käskyllä /opt/nonfree/sicstus/bin/sicstus. Käskyllä prolog puolestaan käynnistyy toinen Prolog-toteutus, SWI-Prolog. Sekin kelpaa kurssin tarkoituksiin, ja sen voi asentaa myös kotikoneelleen.

Suositeltava editori Prolog-ohjelmille on Emacs. Koska Prolog-ohjelmatiedostoissa käytetään perinteisesti .pl-päätettä, joka myös Perl käyttää, on syytä pistää omien tiedostojensa alkuun rivi:

% -*- prolog -*-

Tämän jälkeen Emacs osaa suoraan vaihtaa Prolog-moodiin avatessaan tiedoston. Prolog-moodin saa käynnistettyä myös käsin käskyllä M-x prolog-mode (missä M- tarkoittaa käytännössä Alt- tai Esc-näppäintä).

Tarvitset käyttäjätunnuksen kielitieteen laitoksen ATK-järjestelmiin. Jos sinulla ei ole sellaista, löydät lisätietoja sen hakemisesta täältä.

Prologin käyttäminen Emacsissa

Koneessa venus.ling.helsinki.fi on (X)Emacsiin asennettu suora tuki Sicstus Prologille. Saadaksesi sen käyttöön, anna komento M-x load-library prolog tai aja elisp-lause (require 'prolog). Tämän jälkeen M-x prolog-mode käynnistää Prolog-moodin.

Voit syöttää koodisi sisältävän puskurin suoraan Prolog-tulkille käskyllä M-x prolog-consult-buffer tai näppäinyhdistelmällä C-c C-b.


luentokohtaiset materiaalit

1. Predikaatit, termit, faktat, säännöt ja kyselyt.

Aiheita

Luennolla tehtäviä harjoituksia

Harjoitus

Ensimmäinen harjoitustehtävä: Faktat, säännöt ja kyselyt (deadline 31.1.2005). Mallivastaukset.

2. Hahmonsovitus, peruuttaminen ja samastus. Rakenteiset termit ja listat

Aiheita

Luennolla tehtäviä harjoituksia

Harjoitus

Toinen harjoitustehtävä: Listat ja muut rakenteiset termit (deadline 9.2.2005). Mallivastaukset.

3. Listat ja rekursio

Aiheita

Harjoitus

Kolmas harjoitustehtävä: Lisää listoja (deadline 16.2.2005). Mallivastaukset.

4. Tehokkaat listaoperaatiot, DCG:t

Wiki-sivu aiheesta ja sen sisältämä koodi.

Neljännet harjoitustehtävät. Mallivastaus.

Pieni ohjelmointiesimerkki.

5. Aritmetiikka, leikkaus.

Wiki-sivuja

Viidennet harjoitukset, deadline 4.3. Mallivastaukset.

Luennoilla käsiteltyä esimerkkikoodia.

6. Termien analysointi, tietokannan dynaaminen muokkaus.

Kurssin loppuharjoitus on julkistettu.

Hae laitoksen sivuilta:

Yleisen kielitieteen laitos | Humanistinen tiedekunta | Helsingin yliopisto
Copyright © 2003-2004 Helsingin yliopisto. Kaikki oikeudet pidätetään.