新聞中心
存在大量的編程語言, 如果包括難以置信的甚至是已淘汰的產(chǎn)品,則將近700。 當(dāng)前,編寫您自己的編程語言比以往任何時(shí)候都容易,并且有很多方法可以實(shí)現(xiàn)。 創(chuàng)建自己的編程語言的較低入門門檻導(dǎo)致了許多新的,有趣的,有時(shí)是奇怪的語言。

成都服務(wù)器托管,成都創(chuàng)新互聯(lián)提供包括服務(wù)器租用、綿陽電信機(jī)房、帶寬租用、云主機(jī)、機(jī)柜租用、主機(jī)租用托管、CDN網(wǎng)站加速、域名與空間等業(yè)務(wù)的一體化完整服務(wù)。電話咨詢:028-86922220
這些獨(dú)特的語言中有一些具有獨(dú)特的目的,而其他一些則純粹是學(xué)術(shù)性的甚至是喜劇性的。 能夠?qū)憙H由兩個(gè)或三個(gè)字符組成的語言可能不是最有用的方法,但在這種情況下,旅程可能比目的地更有價(jià)值。 從頭開始學(xué)習(xí)創(chuàng)建語言的實(shí)際內(nèi)容,并確定諸如解釋與編譯,靜態(tài)與動(dòng)態(tài)之類的東西,可能是寶貴的經(jīng)驗(yàn)。
盡管以前曾無數(shù)次討論過奇特而深?yuàn)W的編程語言,但我整理了一份獨(dú)特的清單,列出了新的和相當(dāng)古老的語言。 讓我們一起探索其中一些奇怪的發(fā)現(xiàn),并發(fā)現(xiàn)突破編程界限的語言。
1. LOLCODE
首先是深?yuàn)W的編程語言的"經(jīng)典"。 LOLCODE于2007年問世,它基于" lolcats"語言。 如果您想知道它是什么樣的,下面是一條讀取文件內(nèi)容的語句:
- PLZ OPEN FILE "
"?
好笑吧? 雖然這種語言乍一看似乎像是一個(gè)可愛的玩具,但實(shí)際上它是一種相對(duì)完整的語言。 甚至有完整的教程集可用于tutorialspoint上的LOLCODE的不同元素。
LOLCODE甚至啟發(fā)了其他衍生項(xiàng)目,例如LOLPython,它是LOLCODE的翻譯版本,可與Python一起使用。
2. ArnoldC
> http://lhartikk.github.io/ArnoldC/
還記得《終結(jié)者》電影嗎? 還記得阿諾德·施瓦辛格的一些名言嗎? 您是否曾經(jīng)想過用他的熱門電影中的每句話都是一句話來編寫語言的代碼? 好了,現(xiàn)在您可以使用ArnoldC!
ArnoldC是一種語言,使您幾乎可以完全使用Arnold Schwarzenegger的報(bào)價(jià)進(jìn)行開發(fā)。 如果您過去幾十年來一直生活在一塊巖石上,請查看一些著名語錄的清單。 這是來自ArnoldC網(wǎng)站的示例代碼片段:
- IT'S SHOWTIMETALK TO THE HAND "hello world"
- YOU HAVE BEEN TERMINATED
這只是一個(gè)簡單的" Hello World"程序。 更完整的程序看起來很有趣,而且閱讀起來非常有趣。 Sublime Text甚至提供了一個(gè)語法突出顯示插件,因此您可以真正炫耀自己的ArnoldC技能。
3. Velato
這是一種獨(dú)特的編程語言,并且很好地說明了如何獲得有趣的語言。 Velato是一種使用MIDI文件編寫的語言。 在這種情況下,MIDI文件既可以構(gòu)成音樂,也可以構(gòu)成軟件。 每個(gè)指令基于音符本身的音高和音符之間的間隔。
實(shí)際上是產(chǎn)生音樂和軟件輸出的示例" Hello World"程序。 如果您要通過MIDI軟件演奏樂曲,這聽起來可能不像是一件真正的藝術(shù)品,但是它將在Velato中生成一個(gè)正常運(yùn)行的程序。
Velato有很多音樂/軟件交叉的可能性。 您可能會(huì)挑戰(zhàn)自己,創(chuàng)作一首既能完成編程任務(wù)又能聽起來……音樂的音樂。
4. 披薩
> http://pizzacompiler.sourceforge.net
不,不是真正的比薩。 比薩編程語言。 這是一種基于Java的語言,是在Java具有其今天擁有的許多功能(例如泛型或代數(shù)類型)之前編寫的。 比薩可以說是此列表中較不陌生的語言之一,但在Java歷史中占有很有趣的位置。
比薩看起來很像Java,因?yàn)樗鼘?shí)際上就是Java。 在該語言的后期,它甚至可以在常規(guī)Java環(huán)境中運(yùn)行。 這是Wikipedia的Pizza代碼段:
- public final class Main {
- public int main(String args[]) {
- System.out.println( new Lines(new DataInputStream(System.in))
- .takeWhile(nonEmpty)
- .map(fun(String s) -> int {
- return Integer.parseInt(s);
- })
- .reduceLeft(0, fun(int x, int y) -> int { return x + y; })); while(x == 0) { map.create.newInstance() } }}
Scala是Pizza的繼任者,它以更簡化的方式和更強(qiáng)大的功能集來實(shí)現(xiàn)事物。 要了解有關(guān)Pizza和其他基于Java的語言的歷史的更多信息,請查看此處提供的Martin Odersky訪談。
自己寫
無論您是對(duì)編程語言的構(gòu)建方式感到好奇還是只想創(chuàng)建一種吸引人的有趣語法,都有大量資源可用來編寫自己的語言。
Chirag Khandelwal給初學(xué)者寫了一篇很棒的文章。 他帶領(lǐng)您完成了開發(fā)自定義編程語言的旅程,并向您展示了您在此過程中必須做出的一些有趣的選擇。
謝謝閱讀! 希望您喜歡隨著時(shí)間的推移而發(fā)明的一些有趣的編程語言。
當(dāng)前文章:你可能不知道的4種奇怪的編程語言
URL地址:http://www.dlmjj.cn/article/cdgodjs.html


咨詢
建站咨詢
