Anotace: | Reprodukovatelná operace je taková, která vždycky dopadne stejně, ať už ji
spouštíme v různých časových okamžicích, nebo na různých počítačích.
Kompilování software se naopak vyznačuje zcela opačnými tendencemi – výsledek závisí
na dostupných knihovnách, jejich verzích, stavu cache, někdy dokonce i stavu
nějakého vzdáleného serveru. Nix s tím poměrně úspěšně bojuje. Je to ryze funkcionální
programovací jazyk, kterým popíšeme, co bychom chtěli sestavit, a přiložené nástroje
se nám o to postarají. Jako velmi šílený (ale úspěšný) bonus si můžeme uvědomit, že
operační systém se svou aktuální konfigurací a nainstalovanými programy je také
v nějakém smyslu balíček, který můžeme popsat Nixem. Tím získáme deklarativní
distribuci NixOS, jejíž taje také představím.
|
---|