@vpiotr:
Jeśli chodzi o to co pisze to nawet nie wiem ile mogę napisać :-)
Moja firma zrobiła coś takiego - można pooglądać źródła:
https://github.com/digital-asset/daml
a ja piszę systemy oparte o i powiązane z tym daml-em (tam jest server ), w sumie głównie zajmuje się rozwojem narzędzi do monitoringu i testów wydajności
co to tego, że fp jest outdated u źródła - absurd: wprowadzenie liczb zespolonych nie spowodowało, że naturalne przestały działać,
co więcej nie widze w jaki sposób funkcje iteracyjne, chaos itp. miałyby nie zgadzać się z fp, w końcu większość programowania i tak zaczyna się od halting problem (w fp - to problem równoważności lambd)
to fakt, że raczej cała zabawa polega na tym, jak by tu jednak mieć funkcje deterministyczne
W FP IMO możesz zrobić kawałek systemu, ale nie całość.
W zasadzie to zdanie odnosi się do każdej techniki programowania i języka - nie da się zrobić całości systemu (pytanie co to jest całość), nawet w assemblerze (języku)
(co prawda na upartego to w starych komputerach to się dało, na mikrokontrolerach nadal się da)
Podejście polega na tym, żeby minimalizować te "niepewne elementy imperatywna" i chować za fasadami. Tak jak mniej więcej java chowa funkcje native.
Haskell daje na tyle dużo tych fasad, że praktycznie możesz napisać dowolną aplikację pure fp.
@stivens
React sam w sobie to chyba nie jest mocno funkcyjnie napisany. Ale systemiki oparte o react można pisać funkcyjnie... tyle, że to jest takie fp z zespołem downa.
Pare rzeczy jest niedorobionych. Najbardziej chyba są zabawne react hooks, funkcje - które można wywoływać tylko w pewnych konkretnych miejscach, bo inaczej rypnie (referential transparency leży i kwiczy). Da się na reacta zrobić nakładkę - żeby pisać pure fp - w ScaliJS tak zrobili.