Programowanie funkcyjne: Różnice pomiędzy wersjami

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Przemek (dyskusja | edycje)
Przemek (dyskusja | edycje)
Linia 36: Linia 36:


== Moduły ==
== Moduły ==
robocze:
* [[PF:Moduł Wstęp            | Wstęp – porównanie programowania funkcyjnego i imperatywnego]]
* [[PF:Moduł Wstęp            | Wstęp – porównanie programowania funkcyjnego i imperatywnego]]
* [[PF:Moduł Podstawy        | Podstawy języka programowania Ocaml]]
* [[PF:Moduł Podstawy        | Podstawy języka programowania Ocaml]]


finalne:
* [[Programowanie funkcyjne/Wstęp            | Wstęp – porównanie programowania funkcyjnego i imperatywnego]]
* [[Programowanie funkcyjne/Wstęp            | Wstęp – porównanie programowania funkcyjnego i imperatywnego]]
* [[Programowanie funkcyjne/Podstawy        | Podstawy języka programowania Ocaml]]
* [[Programowanie funkcyjne/Podstawy        | Podstawy języka programowania Ocaml]]

Wersja z 10:06, 17 lip 2006

Forma zajęć

wykład (30 godz.) + laboratorium (30 godz.)

Opis

Celem przedmiotu jest przedstawienie programowania funkcyjnego – paradygmatu i stylu programowania, oraz towarzyszących mu technik programistycznych. Wykłady obejmują wprowadzenie do wybranego języka funkcyjnego (Ocaml) oraz podstawowe pojęcia i techniki programowania funkcyjnego. Laboratoria obejmują praktyczną naukę programowania funkcyjnego, zwieńczoną realizacją średniej wielkości programu.

Sylabus

Autor

  • Marcin Kubica

Wymagania wstępne

  • Wstęp do programowania
  • Logika i teoria mnogości

Zawartość

  • Podstawowe konstrukcje wybranego funkcyjnego języka programowania
  • Typy danych
  • Proceudry wyższych rzędów
  • Model obliczeń programów funkcyjnych (uproszczona semantyka operacyjna)
  • System typów dla fragmentu języka
  • Moduły i funktory
  • Konstrukcje imperatywne
  • Uleniwianie i spamiętywanie
  • Strumienie

Literatura

  1. H. Abelson, G. J. Sussman, Struktura i interpretacja programów komputerowych, WNT 2002.
  2. X. Leroy, The Objective Caml system, [1]
  3. E. Chailloux, P. Manoury, B. Pagano, Developing Applications with Objective Caml, [2]
  4. D. Remy, Using, Understanding and Unraveling the Ocaml Language, [3]

Moduły

robocze:

finalne: