1. je funkce (prakticky) totéž co se tím slovem myslí v matematice - je referenčně transparentní
2. data jsou imutabilní
Zajímavé je, že jsem s proměnnými daty a s procedurami s vedlejšími efekty nikdy žádné zásadní problémy neměl ani v imperativně-procedurálním paradigmatu.
Když čtu o výhodách těchto věcí, tak mi to připomíná telefonické nabídky různých speciálních matrací a postelí, které mají tu výhodu, že člověk na nich spí jako nemluvně a ráno ho nebolej záda. Prodejci nikdy nechtějí pochopit, jak je to možné, že na té nejobyčejnější posteli s nejobyčejnější matrací se vyspím taky úplně normálně a bolest zad znám jen z vyprávění.
Tovis, super-hrnce rulez!

Ja naopak nechapu, jak si muze rikat programator nekdo, kdo je ochoten obetovat tolik efektivity, kvuli nejake "cistote" a pouzivat immutable objekty, a zbytecne vecne nekde neco kopirovat -> kdyz vetsina funkcionalnich jazyku je vzor plytvani..

Ale ted skoro vazne. Cele "funkcionalni paradigma" stoji na "immutable objektech"(pisu to uvozovkach, aby mi tady nekdo nevycital detaily) a cely immutable svet do extremu dovedeny je dost neefektivni. Vezmete si ze mate auto a chcete mu zmenit barvu ... myslite, ze bude jednodussi mit immutable auto a vytvorit kopii auta s jinou barvou(i v realnem svete)? Ne, jednodussi bude tu barvu prestrikat. Jeste lepsi a uplne nejefektivnejsi by bylo,kdybychom umeli barvu zmenit(coz neumime). Ma to spoustu praktickych implikaci, ale ve zjednodusenemem svete(cimz myslim, zjednoduseny svet modelovany softwarem, kde ZATIM (nepotrebujeme/a ani neumime) modelovat vsechny detaily), si zatim muzem tuto "ochcavku" dovolit a usetri nam to spoustu prace(energie)(kterou dela kompl). Proc se chcete vzdavat vyhody dostatecnosti tohoto zjednoduseneho modelu(a zni plynouci mensi energeticke narocnosti) na ukor korektnosti ale vetsi (energeticke) narocnosti?