Umiestnenie: Výučba* | CL Homepage | KAI | FMFI UKBratislave

1-AIN-506 Úvod do deklaratívneho programovania

Prebiehajúca výučba

Výučba kurzu UDP v letnom semesteri a. r. 2014/15 má svoju vlastnú stránku.

O kurze

Cieľ

Cieľom kurzu Úvod do deklaratívneho programovania je poskytnúť študentom iný pohľad na programovanie, než aký umožňujú imperatívne a objektovoorientované jazyky (Delphi/Object Pascal, C++, C#, Java atď.), a zoznámiť ich so základnými technikami a dátovými štruktúrami, ktoré sú použiteľné vo všetkých deklaratívnych jazykoch – tak funkcionálnych (Lisp/Scheme, ML/CAML, Haskell, ...), ako aj logických (Prolog). Symbolické dátové štruktúry deklaratívnych jazykov úzko súvisia s XML.

Sylabus

  1. Explicitné definície
  2. Primitívna rekurzia
  3. Chvostová rekurzia
  4. Rekurzia na notácii čísel (binárnej, diadickej)
  5. Párovanie, zoznamy a zoznamová rekurzia
  6. Kódovanie množín zoznamami a množinové operácie
  7. Triedenie zoznamov
  8. Binárne stromy
  9. Všeobecné rekurzívne dátové štruktúry a ich korešpondencia s XML
  10. Transformácia XML štruktúr

Jazyk a softvér

Pri výučbe používame prostredie programovacieho jazyka a dokazovacieho asistenta CL. CL je jedným z najjednoduchších deklaratívnych jazykov, dá sa považovať za ich spoločný prienik, čo ho robí vhodným pre úvodný kurz.

Nadväznosti

Kurz UDP súvisí s ďalšími predmetmi z programu Aplikovaná informatika. V nasledujúcom zozname sú usporiadané od teoretických po praktické:

Úvod do matematickej logiky pre programátorov (1-AIN-625)
Cieľom teórie programovania je dať programom matematický význam, určiť, akým matematickým objektom programy zodpovedajú. Programy v CL sa dajú veľmi priamočiaro charakterizovať ako podtrieda tzv. rekurzívnych funkcií, ktorých výskum je súčasťou matematickej logiky. Viac sa dozviete na predmete Ing. Jána Komaru.
Špecifikácia a verifikácia programov* (1-AIN-470)
Významnou výhodou deklaratívnych jazykov je, že je výrazne jednoduchšie dokazovať vlastnosti programov v nich napísaných. V tomto smere na kurz UDP nadväzuje kurz Ing. Jána Komaru.
Programovacie paradigmy (1-AIN-430)
Širší prehľad rôznych prístupov k programovaniu s dôrazom na funkcionálne (jazyk Haskell) a logické (jazyk Prolog) programovanie poskytuje predmet dr. Petra Borovanského.
Moderný prístup k webdesignu (1-AIN-636)
O XML a špecializovanom deklaratívnom transformačnom jazyku XSLT sa môžete viac dozvedieť na kurze Mgr. Martina Homolu.

Študijné materiály

Dušan Guller: Poznámky k prednáškam z CL. Skriptá. Formát A4: PDF, PostScript; dve strany na jednu: PDF PostScript; knižka: PDF PostScript (vytlačte obojstranne, po preložení v strede vznikne „knižka“ formátu A5).

Archív výučby


* – aktualizované v priebehu posledných 7 dní Posledná zmena: 2015-02-15T20:25+0100