A funkcionális programozásról szóló előadások vázlata


2. előadásblokk

Utolsó módosítás: 2005. dec. 13. Hanák Péter

A 2005/06-os tanév őszi félévében

a Deklaratív programozás c. tárgy funkcionális programozásról tartott előadásai - G. Smolka német nyelvű jegyzetét[*]követve - a következő témákról szóltak.

10. előadás, nov. 28.

  1. Artimetikai kifejezések ábrázolása. Rekurzív adattípusok deklarálása: datatype exp. Komponensek és részkifejezések: components, subexps.
  2. Környezetek ábrázolása: type env, eval. Környezetek egyesítése: adjoin.
  3. Polimorf típusok deklarálása, pl. lista, verem.
  4. Meghiúsulás kezelése 'a option típussal. nth, valOf, isSome. Int.minInt, Int.maxInt,
  5. Ennesek, aritmetikai kifejezések, listák ábrázolása fával.
  6. ,,Tiszta'' fák. Példa: datatype tree = T of tree list.
  7. Elemi és összetett fák.
  8. Közvetlen részfák: arity, dst.

11. előadás, nov. 29.

  1. Fával ábrázolt aritmetikai kifejezések alakja: shape.
  2. Fák lexikális rendezettsége: compare.
  3. Közvetett részfák: subtree. count, linear, binary.
  4. Fák csomópontjainak címzése: ast.
  5. Fák csomópontjainak száma (mérete), fák mélysége: size, depth.
  6. Fák preorder és postorder bejárása. Részfák kiválasztása preorder sorrendű címzéssel: prest, post.
  7. Fák kiegyensúlyozott volta: forward, depthb, balanced.

12. előadás, dec. 5.

  1. Címkézett fák: datatype 'a ltr = L of 'a * 'a ltr list, head, shape, sameshape.
  2. Címkézett fák preorder és postorder bejárása.
  3. Struktúra (structure) és szignatúra (signature).
  4. Szignatúra áttetsző (transzparens) kötése struktúrához.
  5. Egy struktúra mezői. Összetett azonosítók.
  6. Absztrakt adatstruktúrák. Példa: halmaz ábrázolása listával. type és eqtype.

13. előadás, dec. 6.

  1. Bináris fák
  2. Absztrakció eljárásokkal: determinisztikus és valószínűségi prímteszt.

14. előadás, dec. 12.

  1. Absztrakció eljárásokkal: gyökök meghatározása intervallumfelezéssel, függvény fixpontjának meghatározása, általános Newton-módszer.
  2. Lusta kifejezés, függvény és lista Alice-ben: a lazy kulcsszó, headz, tailz, fromz, squarez, addz, appendz, mapz, filterz, iteratez, randomz.

15. előadás, dec. 13.

  1. Lusta kifejezés, függvény és lista Alice-ben: sievez, qroot, , pairssz, enumeratez, interleavez.
  2. Listák alulról fölfelé haladó rendezése és simarendezése.

Figyelem! A félév utolsó három előadásán nem G. Smolka jegyzetét követtük. Az előadásdiák a szokásos változatokban letölthetők az itt következők szerint.



Footnotes

... jegyzetét[*]
Lásd <http://www.ps.uni-sb.de/~smolka/programmierung.html>.


Hanák Péter 2005-12-13