有沒有可能現在設計乙個程式語言,它能夠充分吸收現存語言的優點,同時排除那些缺點?

時間 2021-05-31 18:01:24

1樓:徐波

語言是拿來面對需求解決問題的。需求不同,問題各異也沒有正確錯誤之分,所以沒法做個完美的語言

試想,如果真的有絕對完美的語言,其他語言泯滅後,這種語言還完美麼?

2樓:吳璽煜

語言過於龐大臃腫,語法糖過多,回字有四種寫法,這本身也可以算是一種缺點。

至於其他答主舉到的例子「記憶體釋放方式」,只需要乙個配置檔案就能解決的事啊,可以由程式設計師自己決定使用GC還是手動釋放。和theano的THEANO_FLAGS差不多,切換後端CPU和GPU。何況這也不是PLT所考慮的吧。

再舉個例子,python是動態語言,但mypy利用function signatures為python3.x新增靜態型別檢查。(已經被吸收進python3.5?)

或者,FP和OOP也有相關的結合。互斥也是可以共存的啊。

3樓:

Rust就是我心中最優秀的語言,然而仍然不完美。

最突出的優點就是無GC的記憶體管理。

但代價是引入新的抽象,學習曲線變陡峭且靈活性受限。

4樓:ghost

優缺點都要辯證來看的。 有些feature既是優點也可能是缺點,你既要吸收又要拋棄,這,這讓老衲情何以堪。施主還是去寫PHP吧。

5樓:

不可能。抽象都是有代價的。。如果不抽象,那就沒有辦法避開底層的坑。

以及,C 很快,很簡潔,卻因為簡潔導致開發效率低和學習周期長。

C++ 很強大,很自由,但缺點正是太自由導致太複雜。

Haskell 很純,但卻因為太純導致數學上的門檻略高。

優點正是缺點。我們不需要避開,只要在正好能展現其優點的時候使用之,就好了。

6樓:exiledkingcc

不可能。

因為一門語言的某個性質到底是優點還是缺點根本就是不確定的,取決於使用的情景。

比如說的最多的就是要不要gc。有時候你需要精確控制記憶體使用,有時候你又想記憶體能自動管理。不管要gc還是不要gc,這兩個需求永遠不能兼顧。

可行的方法是在合適的情景下使用合適的語言,揚長避短。

另外,使用者的水平也能影響一名語言和不合適。

7樓:Coldwings

因為那些所謂優點缺點是要看使用場景的。就比如說GC,不用手動管理記憶體了當然開發起來爽,但是如果記憶體受限,又或者即時性要求高,誰等得了乙個Full GC?再比如說動態型別,寫小東西方便,寫介面方便,但是到一定規模的大專案裡,需要長時間多人合作,則會很大程度上增加專案的維護難度。

幾乎每一種語言特性都有坑,所謂集大成不僅僅整合了優勢,也整合了這些個坑。更何況很多語言特性壓根就是衝突的,沒法放一起。

集大成的語言也不是沒有,C++和Scala都可以拿來當例子了,儘管並沒有真正意義上覆蓋所有範疇,也覆蓋了一大片,於是結果成了沒人敢說精通C++/Scala,並且滿地都是坑,最終也就是一人只用一堆語言特性中的一小部分,根據實際需求來決定用啥。

請問有沒有可能設計乙個電路自檢系統?

現在,複雜的電路或系統都是模組化的,什麼壞了換什麼就好了,完全不需要乙個乙個的檢測,而且,每個元件的重要性不同,有些壞了不會影響系統執行,比如飛機座艙照明燈有個不亮了,那也沒必要安裝自檢電路。而重要的部位,駕駛部分,平衡部分等,就要求不能出錯,這部分往往有備用的系統。可以自動切換。等出了問題,即便檢...

有沒有可能宇宙不止乙個?

大星月 這就要開啟腦洞了一頁菩提一花一世界現在科學家對微觀世界的研究已經達到了夸克或許夸克下面還有更小的世界只是我們還沒有發現而已一粒沙子裡面可能就有無數個宇宙同樣我們的宇宙也是一粒沙子外面還有更大的世界或許某一天科學家突然在某個原子核裡發現了文明呢! 覺醒 1是,宇宙之外還是宇宙,沒有止境。2至於...

有沒有可能通過程式語言在計算機上模擬微粒的性質(分子 原子等)?

plio 有的,我之前去金屬所摸魚的時候帶我的那個組就是用超算進行第一性原理模擬計算的,從原子層面研究材料性質 軟體的話可以搜一下vasp Alex 當然可以。都已經搞了很多很多年了。三大微觀計算 蒙特卡洛 分子動力學 第一性原理。計算化學學科的人天天搞這個,畢業了對口的工作不多。 愛生活呀 以目前...