Daniel Steigerwald

Zrno a pleva Ve funkcionálním programování je zcela zásadní umět od sebe oddělit pure a impure funkce. S těma pure se skvěle nakládá, těch chceme co nejvíce, ale zároveň si s nima nikdy nevystačíme. Každá aplikace musí něco dělat, takže dříve či později potřebujeme i impure funkce. Jde o to, mít jich co nejméně a jen tam, kde je třeba. Přijde mi to podobné jako se zrnem a plevou. Při výrobě potravin z obilí se plevy považují, případně považovaly, za nežádoucí příměs, a proto jsou obilky plev zbavovány. Protože ale plevy obsahují různé minerální látky, preferují někteří lidé celozrnné výrobky – pečivo vyrobené z mouky, do které bylo semleto zrno s plevami. Oddělujeme, abychom mohli správně míchat. Proto je anarchie tak důležitá. Ne proto, že by snad mohl existovat svět bez jakéhokoliv násilí, byrokracie, neefektivity, loupení, lhaní, manipulace, vydírání, zastrašování, a dalších atributů státu. To je nemožné a o to ani nejde. Jde o to, umět ty věci od sebe odlišit. Umět odlišit zrno od plevy, pure od impure funkce, dohodu od donucení, stát od anarchie. Jedině pak si člověk může říct, ok, tady a tady potřebuji / chci plevu, impure function, násilí (na obranu ok, ale nedělat z toho všeobjímající a vše řešící církev - stát).