摘要:編者按本文作者為,主要介紹世上最怪異最難用的種編程語(yǔ)言。這些語(yǔ)言被稱(chēng)為極品編程語(yǔ)言。創(chuàng)造它們的原因通常是為了測(cè)試編程語(yǔ)言設(shè)計(jì)的臨界,或者只是一個(gè)玩笑。就是母牛的編程語(yǔ)言設(shè)計(jì)時(shí)充分考慮了母牛的想法。
【編者按】本文作者為 Deepak Karanth,主要介紹世上最怪異、最難用的5種編程語(yǔ)言。文章系國(guó)內(nèi) ITOM 管理平臺(tái) OneAPM 編譯呈現(xiàn)。
最難學(xué)編程語(yǔ)言有哪些?很多人都用過(guò)Java,C,C++之類(lèi)的編程語(yǔ)言編寫(xiě)代碼。再早幾年,很多人會(huì)使用Pascal,F(xiàn)ortran,COBOL等編程。在學(xué)習(xí)這些語(yǔ)言的過(guò)程中,會(huì)遇到足夠的挑戰(zhàn),讓你抓狂。但是最終,當(dāng)你投入足夠的時(shí)間和精力之后,一切也變得順利起來(lái)。
但是,也的確有些難到極致的編程語(yǔ)言。這些語(yǔ)言被稱(chēng)為極品編程語(yǔ)言。創(chuàng)造它們的原因通常是為了測(cè)試編程語(yǔ)言設(shè)計(jì)的臨界,或者只是一個(gè)玩笑。好消息是,它們永遠(yuǎn)不會(huì)成為主流,所以你不需要學(xué)習(xí)它們!
閑話少說(shuō),最難的(或最怪異的?)編程語(yǔ)言是……
Brainf*ckBrainf*ck由Urban Müller在1993年創(chuàng)建的, 目的是為Amiga OS 2.0版本打造使用最小的編譯器的語(yǔ)言。
Brainf ck主要操縱內(nèi)存單元數(shù)組,此數(shù)組也被稱(chēng)為紙帶(the tape),被初始化為0。Brainf ck只提供了8個(gè)指令。
8個(gè)指令為 ><+-.,[]
“Hello world” code looks like this:
其“Hello world”代碼是這樣的:
++++++++++[>+++++++>++++++++++>+++<<<-]>++.>+.+++++++ ..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.
參考閱讀
COW對(duì)。就是母牛的Cow.
COW編程語(yǔ)言設(shè)計(jì)時(shí)充分考慮了母牛的想法。鑒于母牛的詞匯有限,因此只包含了它們僅有的詞匯。因此,所有指令都是“moo”的變體,恰好是母牛能理解的唯一詞匯。
其他非指令的詞匯或符號(hào)則被完全忽略。因此,空格可有可無(wú),換行符也可有可無(wú)。因此,注釋COW程序非常簡(jiǎn)單,只要不使用任何嵌入指令的詞匯就行了。
MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO Moo MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO Moo MoO MoO MoO MoO MoO MoO MoO Moo Moo MoO MoO MoO Moo OOO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO Moo MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO Moo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo Moo MOo MOo MOo MOo MOo MOo MOo MOo Moo MoO MoO MoO Moo MOo MOo MOo MOo MOo MOo Moo MOo MOo MOo MOo MOo MOo MOo MOo Moo OOO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO Moo
參考閱讀
INTERCAL全稱(chēng)為T(mén)he Compiler Language With No Pronounceable Acronym,縮寫(xiě)為INTERCAL。表達(dá)式看起來(lái)類(lèi)似線路噪音。而指令構(gòu)造會(huì)讓你抓狂,大笑,甚至大罵。
INTERCAL還有許多其他特性,讓程序員很難接受:它使用“READ OUT”,“IGNORE”,“FORGET” 之類(lèi)的聲明,“PLEASE”之類(lèi)的修飾符。使用“PLEASE”時(shí),若遭到編譯器的拒絕,原因一般有二:如果沒(méi)有經(jīng)常使用“PLEASE”,該程序會(huì)被認(rèn)為不夠禮貌,且會(huì)有提示信息;如果使用得過(guò)于頻繁,則會(huì)被認(rèn)為過(guò)分禮貌。
DO ,1 <- #13 PLEASE 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
參考閱讀
Whitespace發(fā)布于2003年4月1日,大多數(shù)人認(rèn)為這是一個(gè)愚人節(jié)玩笑;但它不是。在Whitespace語(yǔ)言中,只可使用空格,制表符和換行符。Whitespace解釋器忽略任何其他非空白字符。不過(guò),有趣之處在于,Whitespace程序可以輕易隱藏在其他語(yǔ)言的空白符中。
參考閱讀
ChefChef是一個(gè)基于棧的語(yǔ)言,程序看起來(lái)就像菜譜。
根據(jù)Chef的主頁(yè),Chef的設(shè)計(jì)原則是:
程序食譜不僅要生成有效的輸出,也要容易準(zhǔn)備,并且美味。
食譜可以根據(jù)不同的預(yù)算調(diào)節(jié)。
食譜是公制的,但也可以使用傳統(tǒng)烹飪度量工具,比如杯子和湯匙。
其“Hello world”是這樣的!
Ingredients. 72 g haricot beans 101 eggs 108 g lard 111 cups oil 32 zucchinis 119 ml water 114 g red salmon 100 g dijon mustard 33 potatoes Method. Put potatoes into the mixing bowl. Put dijon mustard into the mixing bowl. Put lard into the mixing bowl. Put red salmon into the mixing bowl. Put oil into the mixing bowl. Put water into the mixing bowl. Put zucchinis into the mixing bowl. Put oil into the mixing bowl. Put lard into the mixing bowl. Put lard into the mixing bowl. Put eggs into the mixing bowl. Put haricot beans into the mixing bowl. Liquefy contents of the mixing bowl. Pour contents of the mixing bowl into the baking dish. Serves 1.
參考閱讀一與參考閱讀二
其他語(yǔ)言……其實(shí),還有更多難到極致的奇怪語(yǔ)言。請(qǐng)?jiān)L問(wèn)此處,獲得更多信息!
本文系 OneAPM 工程師整理呈現(xiàn)。OneAPM 能為您提供端到端的應(yīng)用性能解決方案,我們支持所有常見(jiàn)的框架及應(yīng)用服務(wù)器,助您快速發(fā)現(xiàn)系統(tǒng)瓶頸,定位異常根本原因。分鐘級(jí)部署,即刻體驗(yàn),性能監(jiān)控從來(lái)沒(méi)有如此簡(jiǎn)單。想閱讀更多技術(shù)文章,請(qǐng)?jiān)L問(wèn) OneAPM 官方技術(shù)博客。
本文轉(zhuǎn)自 OneAPM 官方博客
原文地址:https://dzone.com/articles/most-difficult-and-strangest-programming-languages
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/64820.html
摘要:接下來(lái)繼續(xù)介紹三種架構(gòu)模式,分別是查詢分離模式微服務(wù)模式多級(jí)緩存模式。分布式應(yīng)用程序可以基于實(shí)現(xiàn)諸如數(shù)據(jù)發(fā)布訂閱負(fù)載均衡命名服務(wù)分布式協(xié)調(diào)通知集群管理選舉分布式鎖和分布式隊(duì)列等功能。 SpringCloud 分布式配置 SpringCloud 分布式配置 史上最簡(jiǎn)單的 SpringCloud 教程 | 第九篇: 服務(wù)鏈路追蹤 (Spring Cloud Sleuth) 史上最簡(jiǎn)單的 S...
摘要:它就是史上最簡(jiǎn)單的教程第三篇服務(wù)消費(fèi)者后端掘金上一篇文章,講述了通過(guò)去消費(fèi)服務(wù),這篇文章主要講述通過(guò)去消費(fèi)服務(wù)。概覽和架構(gòu)設(shè)計(jì)掘金技術(shù)征文后端掘金是基于的一整套實(shí)現(xiàn)微服務(wù)的框架。 Spring Boot 配置文件 – 在坑中實(shí)踐 - 后端 - 掘金作者:泥瓦匠鏈接:Spring Boot 配置文件 – 在坑中實(shí)踐版權(quán)歸作者所有,轉(zhuǎn)載請(qǐng)注明出處本文提綱一、自動(dòng)配置二、自定義屬性三、ran...
摘要:為了保證其高可用,單個(gè)服務(wù)又必須集群部署。為了解決這個(gè)問(wèn)題,就出現(xiàn)斷路器模型。一斷路器簡(jiǎn)介摘自官網(wǎng)已經(jīng)創(chuàng)建了一個(gè)名為的庫(kù)來(lái)實(shí)現(xiàn)斷路器模式。較底層的服務(wù)如果出現(xiàn)故障,會(huì)導(dǎo)致連鎖故障。當(dāng)對(duì)特定的服務(wù)的調(diào)用達(dá)到一個(gè)閥值是秒次斷路器將會(huì)被打開(kāi)。 轉(zhuǎn)載請(qǐng)標(biāo)明出處: http://blog.csdn.net/forezp/a...本文出自方志朋的博客 在微服務(wù)架構(gòu)中,我們將業(yè)務(wù)拆分成一個(gè)個(gè)的服務(wù),...
摘要:百度網(wǎng)盤(pán)爬蟲(chóng)博客園上如何邀請(qǐng)好友注冊(cè)您的網(wǎng)站博客園上如何爬取代理服務(wù)器博客園上百度圖片爬蟲(chóng)開(kāi)源中國(guó)上中文分詞十分重要,推薦博客網(wǎng)站真分頁(yè)代碼該怎么寫(xiě)博客園上磁力爬蟲(chóng)源碼公開(kāi)上兼容所有瀏覽器的瀏覽器復(fù)制問(wèn)題 號(hào)稱(chēng)史上最牛逼的幾篇博客這個(gè)說(shuō)法也許夸張了點(diǎn),但總體來(lái)說(shuō)樓主整理的博客都是樓主幸苦之作,并且都是圍繞去轉(zhuǎn)盤(pán)網(wǎng)展開(kāi),這些博客幾乎透漏了該站的所有技術(shù)關(guān)鍵,細(xì)節(jié),甚至所有核心代碼,我個(gè)人...
閱讀 3698·2021-11-22 15:24
閱讀 1606·2021-09-26 09:46
閱讀 1919·2021-09-14 18:01
閱讀 2614·2019-08-30 15:45
閱讀 3532·2019-08-30 14:23
閱讀 1881·2019-08-30 12:43
閱讀 2919·2019-08-30 10:56
閱讀 805·2019-08-29 12:20