Wprowadzenie do programowania funkcyjnego
Paradygmat programowania funkcyjnego cechuje się tym, że funkcje to obywatele pierwszej kategorii, a dane są niemutowalne, czyli pracuje się w całości na stałych. Dodatkowo nie ma wartości null
, a skomplikowane programy cechuje ich imperatywność wyrażona przez monady.
Dziś zapoznamy się z podstawami programowania funkcyjnego w języku F#, który należy do rodziny języków platformy .NET. F# jest językiem pozwalającym na programowanie w wielu różnych paradygmatach, ale głównie skupia się na aspektach funkcyjnych.
Spis treści
- Potrzebne oprogramowanie
- Niech będzie stała
- Zbiory danych
- Jak ty wyglądasz? - Wzorce
- Pokaż mi swój ogon
- Operacja na funkcjach
- Dyskryminowane unie
- Rekordy
- Monady
- Monada stanu
- Wolna monada IO
Materiały
Po warsztacie warto głębiej zapoznać się z F#.
- F#.org - materiały o F#
- F# for fun and profit - prezentacje, kursy
- FSharpPlus - biblioteka upraszczająca korzystanie z monad
- Suave - biblioteka do pisania aplikacji webowych
- Fable - framework do pisania frontendu webowego w F#
- FSLab - zbiór narzędzi do Data Science z F#
- Community4F# (GitHub) - warsztaty Dojo