Ezoterik programlama dilleri, hem dili programlamak hem de onun için yazmak için kavram ve / veya zorluğun kanıtı olarak yaratılmış minimalist dillerdir. Bazılarının gözden geçirilmesine bakalım:
brainfuck
En iyi bilinen ve en popüler olanıdır, sözdizimi oldukça basittir:
+ + + + + + + + + + [ Anıları başlatmak için döngü (10 kez tekrar eder) >+ + + + + + +>+ + + + + + + + + +>+++++++++++>+ + +>+<<<<- 70 100 110 ] >++. 'H' (72) 1 >>+. 'veya' (111) 3 ---. "l" (108) 3 <---. 'a' (97) 2 >>++. boşluk (32) 4 <+. 'm' (109) 3 + + + + + + + +. 'u' (117) 3 -------. 'n' (110) 3 <+ + +. 'd' (100) 2 >+. 'veya' (111) 3 >+. '!' (33) 4 >. '\ n' (10) 5
Sözdizimini açıklamak için en iyisi diğer programlama dillerine dönmektir. Yani içinde Wikipedia sayfası bize ptr'nin işaretsiz bir karaktere eşdeğer olduğu bu denklikler tablosunu sağlayın:
beyinsiz | C | Perl |
---|---|---|
> | ++ ptr; | $ işaretçi ++; |
< | –Ptr; | $ işaretçi–; |
+ | ++ * ptr; | $ bant [$ işaretçi] ++; |
- | - * ptr; | $ bant [$ işaretçi] -; |
. | putchar (* ptr); | yazdır chr $ bant [$ işaretçi]; |
, | * ptr = getchar (); | $ bant [$ işaretçi] = ord (<>); |
[ | while (* ptr) { | while ($ bant [$ işaretçi]) { |
] | } | } |
Ook!
Bir öncekine dayanır, ancak bunun yerine kelime kombinasyonunu kullanır tamam mı?, Aaa! y ayrıca. Kütüphanecinin bir parodisidir. Disk dünyasıbir orangutana dönüşen ve sadece bu üç kelimeyi telaffuz edebilen. Bir kod parçasına bakalım.
Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook. Ook! Ook. Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook. Ook. Ook. Ook! Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook. Ook! Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook. Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook. Ook! Ook. Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook. Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook! Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook. Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook. Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook. Ook. Ook? Ook. Ook? Ook. Ook. Ook! Ook.
Sözde bu "program", tipik "merhaba dünya" yazmaktır.
befunge
Kanımca en özgün olanı, akış kontrol yapısı programa nereye gideceğini söyleyen oklara dayanıyor. Ayrıca, mutant kod (kendi kendini değiştiren kod) oluşturmayı çok daha kolay hale getirir:
vv << 2 ^ v <v13v4 ^ ^ >>?>?> 5 ^ vv v97v6 vv <8. >> ^ ^
Yukarıdaki kod, 1 ile 9 arasında bir sayı oluşturacak sonsuz bir rasgele sayı üreteci hakkındadır. Önceki kodlardan çok daha fazla okunabilir.
Malbolge
Burada rahatsız edici ve okunamaz olması için oluşturulmuş bir programlama dilimiz var (hayır, Cve hayır, değil Perl). Hakkında Malbolgeadı cehennemin 8. çemberinden gelen İlahi Komedya. İşte bir "merhaba dünya" (ya da bana söylendiği gibi):
(=<`:9876Z4321UT.-Q+*)M'&%$H"!~}|Bzy?=|{z]KwZY44Eq0/{mlk**
hKs_dG5[m_BA{?-Y;;Vb'rR5431M}/.zHGwEDCBA@98\6543W10/.R,+O<
lolcat
Basit bir şaka. Kodunuzu görelim:
VAR CAN HAS STDIUM? Bende var VAR IM IN YR LOOP UP VAR!!1 GÖRÜNÜR VAR IZ VAR BÜYÜK DAHA 10? KTHX IM outta YR LOOP KTHXBYE
Önceki programlama dillerinden çok daha okunaklı olduğu için, ne yapması gerektiğini tahmin etmenize izin vereceğim. 😉
İNTERKAL
DO ,1 <- #13 LÜTFEN DO ,1 ALT #1 <- #238 DO ,1 ALT #2 <- #108 DO ,1 ALT #3 <- #112 DO ,1 ALT #4 <- #0 DO ,1 ALT #5 <- #64 DO ,1 ALT #6 <- #194 DO ,1 ALT #7 <- #48 LÜTFEN DO ,1 ALT #8 <- #22 DO ,1 ALT #9 <- #248 DO ,1 ALT #10 <- #168 DO ,1 ALT #11 <- #24 DO ,1 ALT #12 <- #16 DO ,1 ALT #13 <- #162 LÜTFEN OKU OUT ,1 LÜTFEN VERMEK UP
Bu programlama dillerinden bazılarının bazı bilgisayar kavramlarını öğrenmek için çok faydalı olduğunu söylemeliyim. Örneğin, brainfuck işaretçiler hakkında bilgi edinmek için mükemmeldir.
Neredeyse ikili kodu tercih ediyorum
Evet, kesinlikle ikili veya montajcı programlamayı tercih ederim, her şeyi yapabilirsiniz (sonuçta yüksek seviyeli diller işlemci üzerinde çalışır), ancak ezoterik dillerle ilgili ilginç olan şey temsil ettikleri zorluktur. Bu arada roader (bu makalenin yazarı), beni kızdırıyorsun. C ve Perl nasıl okunamaz ve rahatsız edicidir? Ne kadar dayanılmaz bir suç! Ne rezalet! Ama eğer C harikaysa, perl'de programlamadım ama bu dil hakkında iyi yorumlar gördüm çünkü görünüşe göre dosyaları, dizeleri ve bu bölmeleri işlemek için çok uygun, örneğin istismarlar için oldukça iyi, ancak istismarlarda cy python güzel çalış ...
Saludos!
Adamım, C ve perl olayı bir şakaydı ve evet, bunlar oldukça okunabilir diller, doğru ellerde çok pratik ve "güzel". Elbette CI'da bazı insanların anlaşılmaz bir spagetti kodu karmaşası yarattığını gördüm, ve kayıt tutmadan. Perl'e gelince, sadece C'de olduğu gibi aynı şey olmaz, aynı zamanda son derece esnek olduğu için sağduyuya meydan okuyan şeyler bulabilirsiniz. Perl'de programlama deneyimim olmadığını söylemeliyim, ancak sözdizimini oldukça iyi biliyorum.
İlki, mors alfabesiyle nasıl yazılacağıdır 😀
İkincisi orangutan olmak ve dördüncüsü serebral enfarktlara neden oluyor.
Gönderi çok iyi.
seni özledim piet
http://www.dangermouse.net/esoteric/piet.html
Ve şef, unlamda, beyaz boşluk ve tink. Ama makaleyi çok büyütmek istemedim.
ŞOV ZAMANI
ELLE KONUŞ «merhaba dünya»
FESİH EDİLDİNİZ
ArnoldC'de Merhaba Dünya
http://www.genbetadev.com/actualidad/arnoldc-el-lenguaje-basado-en-frases-de-arnold-schwarzenegger
Bunu bilmiyordu, sanırım bu fikir ona "boş sonlandırıcı" tarafından verildi.
Gerçek şu ki, bu programlama dilleri beni güldürdü. İyi.