Dezvoltatorul japonez Keigo Oka a demonstrat că, pe baza utilitarilor GNU find și mkdir, se poate forma un mediu de calcul complet Turing, adică unul care permite implementarea oricărei funcții calculabile și re-crearea sa. Anterior, posibilitatea de a crea un astfel de mediu a fost demonstrată pentru utilitarele sed și awk. Pentru a confirma completitudinea Turing, au fost furnizate implementări ale jocului Fizz buzz și ale automatului celular care acționează conform „regulii 110” folosind combinația find și mkdir.
Pentru a organiza funcționarea buclelor prin find și mkdir, a fost utilizat un truc cu creare recursivă de subdirectoare, în care se folosește opțiunea „-maxdepth” pentru a limita numărul de iterații (de exemplu, pentru o buclă de 3 iterații, se poate rula „find x -maxdepth 3 -execdir mkdir x/x \;”). Numărul de iterații admis se lovește de limitările sistemului de fișiere pentru crearea de directoare înneste și dimensiunea maximă a căii fișierului. Invocarea operațiunilor conditionale este organizată prin expresii regulate, disponibile prin opțiunea „-regex” (de exemplu, pentru a afișa șirul „Buzz” pentru numerele divizibile cu 5, poate fi specificat ‘-regex ‘d((/x){5})+’ -printf “Buzz\n”’).
Sursa: opennet.ro
