天天看點

用“Whitespace”程式設計語言編寫無字天書

用“Whitespace”程式設計語言編寫無字天書

什麼是“whitespace”程式設計語言?

大多數的程式設計語言都會忽略代碼中的空白字元(空格,tab,換行符),有它們沒它們都是一樣的。但有人卻認為這不公平,認為這些無形的字元也應該被 友好的受到重視。隻是因為看不見它們就忽略它們的存在嗎?于是,“whitespace”程式設計語言就這樣誕生了。“whitespace”是專門來彌補普 通程式設計語言中歧視,它給予這些空白字元最重要的地位。在“whitespace”程式設計語言中,任何非空白的字元都是被忽略的,隻有空格符,tab和換行符 被認為是有效的語義字元。

“whitespace”程式設計語言有什麼優勢?

有些任務,當使用其它程式設計語言開發非常困難時,使用whitespace程式設計卻變得非常容易。比如,加密程式。

whitespace程式設計語言尤其适合間諜工作。假設你有一個非常機密的程式,不想任何人看到,該怎麼做?你需要用whitespace程式設計語言編寫,然後把代碼列印出來,删除源檔案。列印出的代碼幾乎全部是空白,沒人會想到它是高度機密的計算機程式源代碼!

使用“whitespace”語言編寫的程式會是什麼樣子?

下面這段代碼看起來是一片空白,但它确實是一段有效的“whitespace”程式代碼。你可以從這裡檢視它的源代碼。

用“Whitespace”程式設計語言編寫無字天書

如何編譯,運作”whitespace”源代碼?

這有一個beta版的代碼解釋器,你可以在這裡下載下傳它。解釋器是用haskell語言寫出的,你還可以下載下傳它的linux二進制程式。這裡還有一篇指導說明。

是誰開發了這種語言?

解釋器是由edwin brady——一個整天熬夜的人——開發的。而語言是由 edwin brady 和 chris morris —— 兩個喝了太多的咖啡的人——開發的。andrew stribblehill也是其中的一份子。同時還要感謝#compsoc郵件組的網友們給出的建議和幫助。

繼續閱讀