Po drátě 4: Řešení úlohy č. 9
V jakémpak jazyce tenhle program je? Potulují se v něm konstrukce známé ze shellu, Céčka a Pascalu. A vskutku, ve všech třech jazycích lze program spustit a pokaždé vypíše nějaký řetězec. Řetězce vypadají jako kusy nějakého dlouhého slova, ale moc k sobě nepasují.Text pohlednice uvnitř programu ovšem mluví o čtyřech jazycích namísto o třech. Tak který je ten čtvrtý? Inu, C++ … ono není tak úplně nadmnožinou Céčka, jak se často tvrdí, a náš program po přeložení C++kem opravdu vypíše jiný výstup.
Komentář
Vícejazyčné programy patří k programátorskému folklóru už odnepaměti. Stejně jako hříčky typu "Vypište, zda kompilátor, kterým byl program přeložen, podporuje vnořené komentáře", "Vypište svůj vlastní zdroják" nebo "Najděte program, který je syntakticky špatně a při pokusu o překlad kompilátor vypíše hlášku identickou se zdrojákem programu".
Tuto úlohu v poněkud ambrožovském duchu má na svědomí Martin Mareš, kterého život (a normy) učí další a další rozdíly mezi C a C++. Zůstává ovšem stále na té správné straně barikády :-) Největší zábava bylo samozřejmě vymýšlení hesla.
Ostatně, čtyři jazyky v jednom zdrojáku nejsou nijak moc. Chvilka googlení odhalí i osmijazyčné programy, jen je potřeba nezačínat s Pascalem a Céčkem, nýbrž něčím tvárnějším, kupodivu třeba Fortranem.