Struktury algebraiczne do programowania mają się tak, jak fizyka molekularna ma się do gotowania - można się bez nich obejść, ale to nie znaczy, że ich tam nie ma. Podczas najbliższego DevDucka przyjrzymy się kilku z nich i sprawdzimy, jak mogą się przydać do pisania czystego kodu i rozwiązywania problemów w praktyce.
16. notacja typów
- Int, String — typy
- n :: Type — n należy do typu Type
- Constr a — konstruktor/generyk (jak T<a>)
- a -> b — funkcja
- a -> b -> c — funkcje są curry’owane
f = (a, b) => a+b ~= g = a => b => a + b
f(2, 3) => 5 ~= g(2)(3) => 5
currying