Tvorba Turingom úplného výpočtového prostredia pomocou utilít GNU find a mkdir

Japonský vývojár Keigo Oka demonštroval, že na základe utilít GNU find a mkdir sa dá vytvoriť výpočtové prostredie, ktoré je Turingovsky kompletné, t.j. umožňuje realizovať akúkoľvek vypočítateľnú funkciu a replikovať seba samého. Predtým bola možnosť vytvorenia podobného prostredia demonštrovaná pre utility sed a awk. Na potvrdenie Turingovej úplnosti sú uvedené implementácie hry Fizz buzz a celulárneho automatu, ktorý funguje podľa "pravidla 110" pomocou kombinácie find a mkdir.

Na organizáciu práce cyklov pomocou find a mkdir bol použitý trik s rekurzívnym vytváraním podadresárov, pričom na obmedzenie počtu iterácií sa používa možnosť "-maxdepth" (napríklad pre cyklus s 3 iteráciami môžete spustiť "find x -maxdepth 3 -execdir mkdir x/x \;"). Počet povolených iterácií naráža na obmedzenia súborového systému na vytváranie vnorených adresárov a maximálnu dĺžku súborovej cesty. Volanie podmienkových operácií je organizované pomocou regulárnych výrazov, dostupných cez možnosť "-regex" (napríklad na výstup "Buzz" pre čísla deliteľné 5, môžete uviesť ‘-regex ‘d((\/x){5})+’ -printf "Buzz\n"‘).

Zdroj: opennet.ru

Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster