Predchádzajúci článok na tému Je vám smutno? 🙁, otvoril cestu pre nový pohľad na IT. Dôkazom toho je aj veľký ohlas, ktorý som zaznamenal. Medzi tisíckami ďakovných listov, ktoré som dostal do redakcie, tu bol aj jeden inšpiratívny. Veľmi významná osoba vo svete funkcionálneho programovania mi dodala ďalšie zaujímavé výsledky. Toutou osobou nie je nik iný ako známy autor populárnej sociálnej siete konecna.net, majster lamba umenia: Lordrat.
Njskôr sa zameral na to, že niektoré programy berú prístup k užívateľovi esteticky pomocou ascii artu. Napríklad taký Clisp.
clisp i i i i i i i ooooo o ooooooo ooooo ooooo I I I I I I I 8 8 8 8 8 o 8 8 I \ `+' / I 8 8 8 8 8 8 \ `-+-' / 8 8 8 ooooo 8oooo `-__|__-' 8 8 8 8 8 | 8 o 8 8 o 8 8 ------+------ ooooo 8oooooo ooo8ooo ooooo 8 Copyright (c) Bruno Haible, Michael Stoll 1992, 1993 Copyright (c) Bruno Haible, Marcus Daniels 1994-1997 Copyright (c) Bruno Haible, Pierpaolo Bernardi, Sam Steingold 1998 Copyright (c) Bruno Haible, Sam Steingold 1999-2000 Copyright (c) Sam Steingold, Bruno Haible 2001-2006 [1]> :-( :- [2]>
Vidíme, že aj napriek silnému tlaku copyrightu, Clisp zareaguje prekvapene a dalo by sa povedať, že skoro až bez komentára :-
Ponorme sa do histórie, spýtajme sa kompilátora jazyka C a uvidíme či sa dokáže vysporiadať nie len s null pointermi, ale aj smajl pointermi.
echo ':-(' | gcc - -E # 1 "<stdin>" # 1 "<built-in>" # 1 "<command-line>" # 1 "<stdin>" :-(
Jednoznačne vidíme snahu o komunikáciu, kde sa kompilátor ponúka alternatívne riešenia pre vašu náladu.
O nepochopenie v medziľudských vzťahoch vôbec nie je núdza. S počítačmi je to podobne. Napríklad Bash vás vôbec nepochopí a naznačí vám, že od vás čakal niečo úplne iné
$ :-( bash: syntax error near unexpected token `newline'
Zostaňme ešte chvíľku pri shelloch. Zdá sa, že tcsh emócie nezvláda. Je však veľmi cenné, že to dokáže priznať.
tcsh > :-( Too many ('s.
Zsh zaryto mlčí, podobne ako tomu bolo u PHP.
No a na záver jeden shell, ktorý sa vás pokúsi presvedčiť, že by ste sa mali tváriť 🙂 a nie 🙁 . A je to Ash.
ash Syntax error: newline unexpected (expecting ")")
Za všetky príklady ďakujem Lordratovi.