Ezoterické programovacie jazyky sú minimalistické jazyky, ktoré sú vytvárané ako dôkaz koncepcie a / alebo výzvy pre programovanie jazyka aj pre písanie tohto jazyka. Pozrime sa na prehľad niektorých z nich:
brainfuck
Je to najznámejšie a najpopulárnejšie, jeho syntax je dosť jednoduchá:
++++++++++ [ Slučka na spustenie pamätí (opakuje sa 10-krát) >+++++++>++++++++++>+++++++++++>+ + +>+<<<<- 70 100 110 30 10 ] >++. „H“ (72) 1 >>+. „alebo“ (111) 3 ---. „l“ (108) 3 <---. „a“ (97) 2 >>++. priestor (32) 4 <+. „m“ (109) 3 ++++++++. „u“ (117) 3 -------. „n“ (110) 3 <+ + +. „d“ (100) 2 >+. „alebo“ (111) 3 >+. „!“ (33) 4 >. „\ n“ (10) 5
Na vysvetlenie jeho syntaxe je najlepšie použiť iné programovacie jazyky. Takže dovnútra jeho stránku Wikipedia poskytnite nám túto tabuľku rovnocennosti, v ktorej je ptr ekvivalentné nepodpísanému znaku:
brainfuck | C | Perl |
---|---|---|
> | ++ ptr; | $ ukazovateľ ++; |
< | –Ptr; | $ ukazovateľ–; |
+ | ++ * ptr; | $ tape [$ pointer] ++; |
- | - * ptr; | $ tape [$ pointer] -; |
. | putchar (* ptr); | print chr $ tape [$ pointer]; |
, | * ptr = getchar (); | $ tape [$ pointer] = ord (<>); |
[ | while (* ptr) { | while ($ tape [$ pointer]) { |
] | } | } |
Ok!
Vychádza z predchádzajúceho, ale namiesto toho používa kombináciu slov Ok?, Ok! y tiež. Je to paródia na knihovníka Zemský svet, ktorý sa transformuje na orangutana a dokáže vysloviť iba tieto tri slová. Pozrime sa na kúsok kódu.
Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook. Ook! Ook. Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook. Ook. Ook. Ook! Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook. Ook! Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook. Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook. Ook! Ook. Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook. Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook! Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook. Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook. Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook. Ook. Ook? Ook. Ook? Ook. Ook. Ook! Ook.
Údajne tento „program“, ktorý robí, je písanie typického „ahoj sveta“.
Befunge
Podľa môjho názoru najoriginálnejšia zo všetkých je jeho štruktúra riadenia toku založená na šípkach, ktoré programu hovoria, kam má ísť. Oveľa jednoduchšie je aj vytváranie mutantného kódu (kód, ktorý sa sám upravuje):
vv << 2 ^ v <v13v4 ^ ^ >>?>?> 5 ^ vv v97v6 vv <8. >> ^ ^
Vyššie uvedený kód je o nekonečnom generátore náhodných čísel, ktorý vygeneruje číslo medzi 1 a 9. Oveľa čitateľnejšie ako tie predchádzajúce.
Malbolge
Tu máme programovací jazyk vytvorený tak, aby bol dráždivý a nečitateľný (nie, nie je to tak) C, a nie, nie je Perl). Je o Malbolge, ktorého meno pochádza z 8. kruhu pekla v Božská komédia. Tu je „ahoj svet“ (alebo mi to tak bolo povedané):
(=<`:9876Z4321UT.-Q+*)M'&%$H"!~}|Bzy?=|{z]KwZY44Eq0/{mlk**
hKs_dG5[m_BA{?-Y;;Vb'rR5431M}/.zHGwEDCBA@98\6543W10/.R,+O<
Lolcat
Jednoduchý vtip. Pozrime sa na váš kód:
HAI CAN HAS STDIUM? MÁM VAR IM IN YR LOOP UP VAR!!1 VIDITEĽNÉ VAR IZ VAR Väčší AKO 10? KTHX IM Outta YR LOOP KTHXBYE
Pretože je oveľa čitateľnejší ako predchádzajúce programovacie jazyky, nechám vás hádať, čo má robiť. 😉
INTERCALL
DO ,1 <- #13 Prosím DO ,1 POD #1 <- #238 DO ,1 POD #2 <- #108 DO ,1 POD #3 <- #112 DO ,1 POD #4 <- #0 DO ,1 POD #5 <- #64 DO ,1 POD #6 <- #194 DO ,1 POD #7 <- #48 Prosím DO ,1 POD #8 <- #22 DO ,1 POD #9 <- #248 DO ,1 POD #10 <- #168 DO ,1 POD #11 <- #24 DO ,1 POD #12 <- #16 DO ,1 POD #13 <- #162 Prosím READ VON ,1 Prosím DAJTE UP
Musím povedať, že niektoré z týchto programovacích jazykov sú veľmi užitočné na spoznávanie niektorých počítačových konceptov. Napríklad, brainfuck je ideálny na spoznávanie ukazovateľov.
Skoro preferujem binárny kód
Áno, určite uprednostňujem programovanie priamo v binárnom alebo v assembleri, môžete robiť čokoľvek (jazyky na vysokej úrovni nakoniec bežia na procesore), ale zaujímavosťou ezoterických jazykov je výzva, ktorú predstavujú. Mimochodom, cestár (autor tohto článku), ma štveš. Ako sú C a Perl nečitateľní a dráždiví? Aký neprípustný priestupok !! Aké to pobúrenie! Ale ak je C úžasné, v Perle som neprogramoval, ale videl som dobré komentáre k tomuto jazyku, pretože je zjavne veľmi vhodný na prácu so súbormi, reťazcami a týmito podmi, napríklad pre exploity je to celkom dobré, aj keď cy python v exploits pracovať dobre ...
Saludos!
Človeče, vec C a perl bol vtip, a áno, sú to dosť dobre čitateľné jazyky, veľmi praktické a „krásne“ v správnych rukách. Samozrejme, že v CI videli, že niektorí ľudia nakoniec vytvorili spleť nezrozumiteľného špagetového kódu, a bez evidencie. Pokiaľ ide o Perl, deje sa nielen to isté, čo s C, ale keďže je tak mimoriadne flexibilný, môžete nájsť veci, ktoré popierajú zdravý rozum. Musím povedať, že nemám skúsenosti s programovaním v Perle, ale jeho syntax viem celkom dobre.
Prvý je spôsob, ako písať v morzeovke 😀
A druhý má byť orangutan a štvrtý spôsobuje mozgové infarkty.
Veľmi dobrý príspevok.
chýbaš mi piet
http://www.dangermouse.net/esoteric/piet.html
A šéfkuchár, unlamda, biele medzery a drobnosti. Ale nechcel som, aby bol článok príliš veľký.
JE TO PREDSTAVENIE
HOVORIŤ DO RUKY «ahoj svet»
BOL STE UKONČENÝ
Ahoj svet v ArnoldC
http://www.genbetadev.com/actualidad/arnoldc-el-lenguaje-basado-en-frases-de-arnold-schwarzenegger
No ten nevedel, myslím, že nápad mu dal „nulový terminátor“
Pravda je, že tie programovacie jazyky ma rozosmiali. Dobre.