在我看來,一些語言通常被認爲比其他語言更漂亮。這似乎適用於所有的編程範例。是否有任何抽象/範式跨越的特點,使程序員認爲語言是美麗的?什麼特徵使程序員將語言設想爲美麗?
編輯:如果你認爲沒有達成共識,那麼請不要猶豫,說出你自己的看法
在我看來,一些語言通常被認爲比其他語言更漂亮。這似乎適用於所有的編程範例。是否有任何抽象/範式跨越的特點,使程序員認爲語言是美麗的?什麼特徵使程序員將語言設想爲美麗?
編輯:如果你認爲沒有達成共識,那麼請不要猶豫,說出你自己的看法
我認爲美麗是概念極簡或更確切地說是組正交一些一般性的語言基本的...
,而不是描述幾乎同樣的事情,需要許多功能不太強大的功能,而永久不得不考慮特殊情況。
哈斯克爾例如基本上只是一些語法與在如此強大的方式,也許沒有其他共同語言可以實現涵蓋了一個令人難以置信的小型系統(只值,泛型,構造函數的類型類)周圍three primitives。 一遍值的概念涵蓋一切 - 數據,功能,對象(如值的集合),...
經典VB對對方有甚至超過5種循環的方式內置。數值和函數,普通數據和對象之間有所不同......而且整體幾乎沒有任何編寫通用代碼的可能性。
有沒有對美的任何普遍規律。美麗在旁觀者眼中 - 每個人都有自己的美麗理念。
就我個人而言,我喜歡允許您編寫簡潔但不含義的代碼。它表達了我的想法,沒有額外的粗俗或魔法奧術語法。
+1我的想法準確 – delnan 2010-09-18 10:04:08
在軟件方面有一種趨向於更多的語言和語言功能聲明式。目前大多數語言都是關於怎麼樣,而不是什麼。 for循環指出了代碼的行爲方式,但並不表示你想要發生什麼。
對我來說,一種美麗的語言讓我可以聲明,而不會帶走優化的能力。更多表達你可以在代碼中,更好。
這裏是我的名單:
好吧,如果N個特徵可以統一成一個(例如函數是一等值,方法只是函數,一切都是一個對象等),那很好。但是「lispy」方式又稱「給我一些原始的和宏觀的系統,我自己構建其餘的」有風險。要麼你最終得到的是螺栓,要麼你花時間圍繞那些如果你開始使用自己的語言就不會在那裏的東西。 – delnan 2010-09-18 10:13:55