Programowanie funkcyjne 1000-2M24PFU
Tematy
Wprowadzenie: wartości, funkcje, typy, abstrakcja
Funkcje wyższego rzędu
Typy danych
Polimorfizm parametryczny
Abstrakcja typów danych (sygnatury, klasy, funktory)
I/O i inne elementy imperatywne
Obliczenia leniwe, strumienie
Testowanie
Rozumowanie o programach (poprawność, złożoność, techniki optymalizacji)
Elementy funkcyjne w innych językach programowania (np. funkcje wyższego rzędu, kontynuacje, callbacki, promesy)
Rodzaj przedmiotu
Koordynatorzy przedmiotu
Efekty kształcenia
Cele kształcenia
Student ma ogólną wiedzę na temat funkcyjnego paradygmatu programowania.
Student umie:
stworzyć średniej wielkości program w języku funkcyjnym,
posługiwać się funkcyjnymi mechanizmami obecnymi w innych językach programowania,
Kryteria oceniania
Zasady zaliczania
średniej wielkości indywidualny projekt programistyczny,
egzamin
Literatura
Literatura
Graham Hutton, Programming in Haskell (2nd Ed), Cambridge University Press 2016
Christopher Allen, Julie Moronuki, Haskell Programming from first Principles, http://haskellbook.com/
B. O'Sullivan, J. Goerzen, D. Stewart Real World Haskell O'Reilly Media 2008, http://book.realworldhaskell.org/
Więcej informacji
Więcej informacji o poziomie przedmiotu, roku studiów (i/lub semestrze) w którym się odbywa, o rodzaju i liczbie godzin zajęć - szukaj w planach studiów odpowiednich programów. Ten przedmiot jest związany z programami:
Dodatkowe informacje (np. o kalendarzu rejestracji, prowadzących zajęcia, lokalizacji i terminach zajęć) mogą być dostępne w serwisie USOSweb: