Esoterické programovací jazyky jsou minimalistické jazyky vytvořené jako důkaz konceptu a / nebo výzvy, a to jak pro programování jazyka, tak pro psaní pro něj. Podívejme se na recenzi některých z nich:
Kurva
Je nejznámější a nejpopulárnější, jeho syntaxe je poměrně jednoduchá:
++++++++++ [ Smyčka pro spuštění vzpomínek (opakuje se 10krát) >+++++++>++++++++++>+++++++++++>+ + +>+<<<<- 70 100 110 ] >++. „H“ (72) 1 >>+. „nebo“ (111) 3 ---. 'l' (108) 3 <---. „a“ (97) 2 >>++. prostor (32) 4 <+. 'm' (109) 3 ++++++++. „u“ (117) 3 -------. 'n' (110) 3 <+ + +. 'd' (100) 2 >+. „nebo“ (111) 3 >+. '!' (33) 4 >. '\ n' (10) 5
Abychom vysvětlili jeho syntaxi, je nejlepší obrátit se na jiné programovací jazyky. Takže dovnitř jeho stránku na Wikipedii poskytněte nám tuto tabulku rovnocennosti, ve které je ptr ekvivalentní nepodepsanému znaku:
brainfuck | C | Perl |
---|---|---|
> | ++ ptr; | $ pointer ++; |
< | –Ptr; | $ pointer–; |
+ | ++ * ptr; | $ tape [$ pointer] ++; |
- | - * ptr; | $ tape [$ pointer] -; |
. | putchar (* ptr); | print chr $ tape [$ pointer]; |
, | * ptr = getchar (); | $ tape [$ pointer] = ord (<>); |
[ | while (* ptr) { | while ($ tape [$ pointer]) { |
] | } | } |
Ok!
Je založen na předchozím, ale místo toho používá kombinaci slov Ok?, Dobře! y Také. Je to parodie na knihovníka z Zeměplocha, který se přemění na orangutana a dokáže vyslovit pouze tato tři slova. Podívejme se na část 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.
Pravděpodobně tento "program", co dělá, je psát typický "ahoj svět."
Befunge
Podle mého názoru nejoriginálnější ze všech, jeho struktura řízení toku je založena na šipkách, které programu říkají, kam má jít. Také je mnohem snazší vytvořit mutantní kód (kód, který se sám upraví):
vv << 2 ^ v <v13v4 ^ ^ >>?>?> 5 ^ vv v97v6 vv <8. >> ^ ^
Výše uvedený kód je nekonečný generátor náhodných čísel, který vygeneruje číslo mezi 1 a 9. Mnohem čitelnější než předchozí.
Malbolge
Zde máme programovací jazyk vytvořený tak, aby byl dráždivý a nečitelný (ne, není C, a ne, není Perl). Je o Malbolge, jehož jméno pochází z 8. kruhu pekla Božská komedie. Zde je „ahoj svět“ (nebo mi to bylo řečeno):
(=<`:9876Z4321UT.-Q+*)M'&%$H"!~}|Bzy?=|{z]KwZY44Eq0/{mlk**
hKs_dG5[m_BA{?-Y;;Vb'rR5431M}/.zHGwEDCBA@98\6543W10/.R,+O<
Lolcat
Prostý vtip. Uvidíme váš kód:
DVA PLECHOVKA HAS STDIUM? JÁ MÁM VAR IM IN YR SMYČKA UP VAR!!1 VIDITELNÉ VAR IZ VAR VĚTŠÍ NEŽ 10? KTHX IM Z YR SMYČKA KTHXBYE
Protože je mnohem čitelnější než předchozí programovací jazyky, nechám vás hádat, co má dělat. 😉
INTERKÁLNÍ
DO ,1 <- #13 PROSÍM DO ,1 XNUMX XNUMX SUB #1 <- #238 DO ,1 XNUMX XNUMX SUB #2 <- #108 DO ,1 XNUMX XNUMX SUB #3 <- #112 DO ,1 XNUMX XNUMX SUB #4 <- #0 DO ,1 XNUMX XNUMX SUB #5 <- #64 DO ,1 XNUMX XNUMX SUB #6 <- #194 DO ,1 XNUMX XNUMX SUB #7 <- #48 PROSÍM DO ,1 XNUMX XNUMX SUB #8 <- #22 DO ,1 XNUMX XNUMX SUB #9 <- #248 DO ,1 XNUMX XNUMX SUB #10 <- #168 DO ,1 XNUMX XNUMX SUB #11 <- #24 DO ,1 XNUMX XNUMX SUB #12 <- #16 DO ,1 XNUMX XNUMX SUB #13 <- #162 PROSÍM ČÍST OUT ,1 PROSÍM DÁT UP
Musím říci, že některé z těchto programovacích jazyků jsou velmi užitečné pro poznání některých počítačových konceptů. Například, Kurva je ideální pro učení o ukazatelích.
Skoro dávám přednost binárnímu kódu
Ano, rozhodně dávám přednost programování přímo v binárním nebo assembleru, můžete dělat cokoli (jazyky na vysoké úrovni nakonec běží na procesoru), ale zajímavost esoterických jazyků je výzva, kterou představují. Mimochodem, roader (autor tohoto článku), naštveš mě. Jak jsou C a Perl nečitelné a dráždivé? Jaký nesnesitelný přestupek !! Jaké pobouření! Ale pokud je C skvělé, v perlu jsem neprogramoval, ale viděl jsem dobré komentáře k tomuto jazyku, protože je zjevně velmi vhodný pro práci se soubory, řetězci a těmito lusky, například pro exploity je to docela dobré, i když cy python v exploits funguje dobře ...
Saludos!
Člověče, věc C a perl byl vtip, a ano, jsou to docela čitelné jazyky, velmi praktické a „krásné“ ve správných rukou. Samozřejmě v CI viděli, že někteří lidé nakonec vytvořili spleť nesrozumitelného špagetového kódu, a bez vedení záznamů. Pokud jde o Perl, neděje se jen to samé jako u C, ale protože je tak extrémně flexibilní, najdete věci, které se vzpírají zdravému rozumu. Musím říci, že nemám žádné zkušenosti s programováním v Perlu, ale jeho syntaxi znám docela dobře.
První je, jak psát morseovou abecedou
A druhý má být orangutan a čtvrtý způsobuje mozkové infarkty.
Velmi dobrý příspěvek.
chybíš mi piet
http://www.dangermouse.net/esoteric/piet.html
A kuchař, unlamda, prázdné znaky a drobnosti. Ale nechtěl jsem, aby byl článek příliš velký.
JE PŘEDSTAVENÍ
HOVORTE DO RUKY «ahoj svět»
BOL STE UKONČEN
Hello World in ArnoldC
http://www.genbetadev.com/actualidad/arnoldc-el-lenguaje-basado-en-frases-de-arnold-schwarzenegger
Tenhle nevěděl, myslím, že nápad mu dal „nulový terminátor“
Pravda je, že mě tyto programovací jazyky rozesmály. Dobrý.