導讀:文章根據topdesignmag.com上一篇《Top 13 Most Absurd Programming Languages》,整理編譯而來。這是一個娛樂貼,不要去問這些編程語言到底有沒有什麼實用價值,可以讓我們感嘆一下神奇和開發者獨特的思維,這就是實用價值。
1.Lolcode
LOLCODE是一種建立在高度縮寫的網絡英語之上的編程語言,一般來說如果一個人能理解這種網絡英語就能在未經訓練的情況下讀懂LOLCODE程序源代碼。
“Hello World” example:
HAI
CAN HAS STDIO?
VISIBLE “HAI WORLD!”
KTHXBYE
2.Befunge
Befunge這門語言由Chris Pressey在1993年創造,本意爲設計一種儘量難編譯的語言……結果馬上出現了一批編譯器。
“Hello World” example:
"dlroW olleH">:v
^,_@
3.Brainfuck
Brainfuck,是一種極小化的計算機語言,它是由Urban Müller在1993年創建的。由於fuck在英語中是髒話,這種語言有時被稱爲brainf*ck或brainf***,甚至被簡稱爲BF。
“Hello World” example:
++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.
4.Chef
Chef的目標是讓寫程序看起來像菜譜
“Hello World” example:
Put cinnamon into 2nd mixing bowl
5.Piet
Piet是一種可視化的編程語言,其代碼本身就是可視化的,像個位圖。
“Hello World” example:
6.Shakespeare
Shakespeare編程語言讓程序看起來像莎士比亞的劇本。
“Hello World” example:
[Enter Juliet][Enter Romeo and Juliet]
[Exit Romeo]
[Exeunt Romeo and Juliet]
[Exeunt]
7.Whitespace
Whitespace只考慮空格的排版,而完全置那些非空格字符於不顧。
A part of “Hello World” example:
8.INTERCAL
INTERCAL,是“Compiler Language With No Pronounceable Acronym”的縮寫,它諷刺了當時各種編程語言的很多方面,以及在20世紀60年代擬定的語言結構和註譯。
“Hello World” example:
DO ,1 <-#13PLEASE DO ,1 SUB #1 <-#238
DO ,1 SUB #2 <-#108
DO ,1 SUB #3 <-#112
DO ,1 SUB #4 <-#0
DO ,1 SUB #5 <-#64
DO ,1 SUB #6 <-#194
DO ,1 SUB #7 <-#48
PLEASE DO ,1 SUB #8 <-#22
DO ,1 SUB #9 <-#248
DO ,1 SUB #10 <-#168
DO ,1 SUB #11 <-#24
DO ,1 SUB #12 <-#16
DO ,1 SUB #13 <-#162
PLEASE READ OUT ,1
PLEASE GIVE UP
9.Malbolge
Malbolge是BenOlmstead在1998年引進公共領域的深奧程序語言,名稱來源於“the eighth circle of hell in Dante’s Inferno”,之後更名爲Malbolge。它有着最難和最深奧的編程語言特點。但是,用一些技巧可以來理解它,可以由難化簡。
“Hello World” example:
('&%:9]!~}z2Vxwv-,POqponl$Hjig%eB@@>}=<M:9wv6WsU2Tnm-,jcL(I&%$#"
`CB]V?
Tx
uVtT`Rpo3NlF.Jh++FdbCBA@?]!~4XzyTT43Qsqq(Lnmkj"Fhg${z@
10.BIT
BIT是一種程序語言,程序員在基本機器上擁有訪問所有數據的全部權限。這是一款強大的編程工具。在高級程序語言中,一些專門功能是用更爲複雜和抽象數據類型來設計的。該工具可以操作這些令人費解的數據。
A part of “Hello World” example:
LINENUMBERZEROCODEPRINTZEROGOTOONELINENUMBERONECODEPRINTONEGOTOONEZEROLINENUMBE
RONEZEROCODEPRINTZEROGOTOONEONELINENUMBERONEONECODEPRINTZEROGOTOONEZEROZEROLINE
NUMBERONEZEROZEROCODEPRINTONEGOTOONEZEROONELINENUMBERONEZEROONECODEPRINTZEROGOT
OONEONEZEROLINENUMBERONEONEZEROCODEPRINTZEROGOTOONEONEONELINENUMBERONEONEONECOD
EPRINTZEROGOTOONEZEROZEROZEROLINENUMBERONEZEROZEROZEROCODEPRINTZEROGOTOONEZEROZ
EROONELINENUMBERONEZEROZEROONECODEPRINTONEGOTOONEZEROONEZEROLINENUMBERONEZEROON
EZEROCODEPRINTONEGOTOONEZEROONEONELINENUMBERONEZEROONEONECODEPRINTZEROGOTOONEON
EZEROZEROLINENUMBERONEONEZEROZEROCODEPRINTZEROGOTOONEONEZEROONELINENUMBERONEONE
ZEROONECODEPRINTONEGOTOONEONEONEZEROLINENUMBERONEONEONEZEROCODEPRINTZEROGOTOONE
ONEONEONELINENUMBERONEONEONEONECODEPRINTONEGOTOONEZEROZEROZEROZEROLINENUMBERONE
ZEROZEROZEROZEROCODEPRINTZEROGOTOONEZEROZEROZEROONELINENUMBERONEZEROZEROZEROONE
CODEPRINTONEGOTOONEZEROZEROONEZEROLINENUMBERONEZEROZEROONEZEROCODEPRINTONEGOTOO
11.Ook!
Ook! 與Brainfuck類似, 但用單詞“Ook!”
,“Ook.
” 和“Ook?
”代替。
“Hello World” example:
Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook.
Ook! Ook. Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook?
Ook! Ook! Ook? Ook! Ook? Ook. Ook. Ook. Ook! Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook. Ook! Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook! Ook. Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook. Ook! Ook.
Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook. Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook.
Ook? Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook! Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook! Ook. Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook.
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook!
Ook! Ook. Ook. Ook? Ook. Ook? Ook. Ook. Ook! Ook.
12.ZOMBIE
ZOMBIE是專門爲Necromancers設計的一款程序語言,ZOMBIE是Zombie-Oriented Machine-Being InterfaceEngine的縮寫。
“Hello World” example:
HelloWorld is a zombie
summon
task SayHello
say"Hello World!"
animate
animate
13.HQ9+
HQ9+帶有四個指令的joke語言。
H: Print “hello,world”
Q: Print the program’s source code
9: Print the lyrics to “99 Bottles of Beer”
+: Increment the accumulator