„Deklaratív programozás” változatai közötti eltérés
A VIK Wikiből
Hasznos fordítók és futtató környezetek a házikhoz |
Nincs szerkesztési összefoglaló |
||
1. sor: | 1. sor: | ||
{{Tantárgy | {{Tantárgy | ||
| | |tárgykód=VISZA402 | ||
|nev=Deklaratív programozás | |nev=Deklaratív programozás | ||
|kredit=5 | |kredit=5 |
A lap 2015. november 8., 00:30-kori változata
Követelmények
Előtanulmányi rend
A tárgy felvételéhez szükséges a Szoftvertechnológia tárgy teljesítése.
Félévközi feladatok
- A gyakorlatok legalább 70%-án való részvétel.
- Sikeres nagyZH (azaz mindkét nyelvből legalább 40%-os teljesítmény)
- Legalább 3 kisházi sikeres beadása (de mindkét nyelvből legalább 1)
Megajánlott jegy
- Azok a hallgatók, akiknek a nagy házi feladata mindkét nyelven bejut a létraversenybe, megajánlott jegyet kaphatnak.
- Jó megajánlott jegyet kap az, aki elővizsgán sikeresen megvédi mindkét, a létraversenybe bejutott nagy házi feladatát.
- Jeles megajánlott jegyet kap az, akinek programja ezen felül a létraverseny teszteseteinek legalább 40%-át időkorláton belül teljesíti.
A tárgyról
- Kedvcsináló
- Mottó: Ami igaz, nem biztos, hogy gyors is.
- Ajánlott rövidítés: dp/deklapo
Kapcsolódó tárgyak
Miből érdemes tanulni?
- Fóliák. A diasor nagyon jó, mindent meg lehet belőle tanulni.
- Prolog:
- jegyzet: Szeredi Péter, Benkő Tamás: Deklaratív programozás. Bevezetés a logikai programozásba. Oktatási segédlet, 2004. Eredeti, VIKWiki mirror – kereshető változat.
- Erlang
- magyar könyv nincs, a diasorból érdemes tanulni
- ajánlott könyv: Joe Armstrong: Programming Erlang: Software for a Concurrent World
- ELTE anyagok: http://nyelvek.inf.elte.hu/leirasok/Erlang/
- ingyenes tutorial: http://learnyousomeerlang.com/
Gyakorlatok
A tárgyból hetente gyakorlatok vannak, az előadáson szereplő programozási nyelvnek megfelelően.
Számonkérés
A vizsgán 100 (+7) pontot lehet elérni. A félévközi munka súlya 30 (+7) pontot.
Kis házi feladatok
- Kötelező beadni a 7 kisháziből 3-at, de mindét nagy nyelvből legalább 1-1 kell hogy legyen. („Felhívjuk mindenki figyelmét, hogy a beadás kötelező, még akkor is, ha a program tesztelése nem sikeres.”)
- 3-3 feladat Prologból és Erlang-ból.
- Beadás ETS-en keresztül.
- Minden feladat jó megoldásáért 1-1 pluszpont a vizsgán.
- Össz. max. +7 pont.
Nagy házi feladat
- Nem kötelező beadni.
- 1 feladat, amit Prologban és Erlangban is meg lehet oldani.
- 10 teszteset, 0,5 pont/helyes lefutás/nyelv.
- 5 pont a doksi.
- Össz. 15 pont.
Létraverseny
- Azok a nagy házi feladatok vesznek részt a létraversenyen, amelyek az adott nyelven az éles teszteseteknek legalább 80%-át (azaz legalább 8 tesztesetet) időlimiten belül megoldanak.
- 10 teszteset van, az időlimit általában 120-180 másodperc/teszteset.
- Pontszám = ∑ min(futási idő, időlimit).
- Ha valamelyik nyelven n. helyezést érsz el, max(8-n/2, 0) pluszpontot kapsz vizsgán.
Zárthelyi
- Kötelező.
- Semmilyen jegyzet, segédlet nem használható.
- A megtanulandó könyvtári függvények és eljárások listája előre meg van adva, a zh anyaga az előző hét végéig leadott anyag.
- A sikeres zh feltétele a maximális részpontszám 40%-ának megszerzése mindkét nyelven.
- Pótpót zh a vizsgaidőszak első hetében.
- Össz. 15 pont.
Vizsga
- Írásbeli feladatmegoldással kombinált szóbeli vizsga.
- Prolog, Erlang: több kisebb feladat, kétszer 35 pontért (programírás, -elemzés).
- Semmilyen jegyzet, segédlet nem használható.
- A megtanulandó könyvtári függvények és eljárások listája előre meg van adva.
- A sikeres vizsga feltétele a maximális részpontszám 40%-ának megszerzése mindkét nyelven.
- Össz. 70 pont.
Hasznos fordítók és futtató környezetek a házikhoz
Emacs howto Windows alá
Írtam egy rövid összegzést arról, hogy az emacsot mi módon lehet Windows alatt összekapcsolni az SML és Prolog fordítókkal: Emacs telepítési lépések.
Online Prolog IDE-k
- SWISH
- Bal oldalt kell megadni a kódot, jobb alul a futtatandó parancsot és jobb felül jelenik meg az eredmény.
- Jobb alul a Solutions -> Debug (trace)-re kattintva lehet debug-olni.
- tutorialspoint - Coding Ground