Nim語言不火是有原因的
最近用Python做比較繁雜的統(tǒng)計計算,運行效率有點慢,想換一款效率更高的語言。Nim作為編譯型語言,效率接近C/C++,語法跟Python很接近,就試用了一下——然后就發(fā)現(xiàn)它這么多年一直不火是有原因的。
我參照官方文檔遇到的奇葩問題:Windows平臺,數(shù)據(jù)庫相關的模塊無法安裝。
按照文檔提示,數(shù)據(jù)庫有關的模塊都在db_connector里面,以ODBC和Sqlite為例,文檔是這么說明的:


按照提示操作的結果如下:

我去Nim Package Directory (nimble.directory)網(wǎng)站查詢,根本就沒有db_connector這個包,正確的名稱叫dbconnector,安裝命令也應該改成nimble install dbconnector。好吧,這算筆誤,我忍了,照著Nimble官網(wǎng)提示繼續(xù)安裝dbconnector……

??呵呵,又被騙了一次,我真善良。
??這年頭,除了嵌入式語言之外,沒有誰覺得數(shù)據(jù)庫算小眾需求吧?
官方團隊近些年在不斷調整內置標準庫,比如數(shù)據(jù)庫模塊就不在標準庫里(需要自行安裝)。問題出在官方團隊只維護標準庫,似乎沒有負責"關鍵庫"的人員。所有移出標準庫的功能,連官方文檔都是不可靠的,這可是最新版(2.0)的官方文檔啊。
此外調整標準庫的行為,還導致很多技術文章和代碼都失效了。國外寫的一些文章里,用到了ui庫,以前也是由官方團隊支持的,現(xiàn)在廢棄了。所有用到ui庫的技術文章,就沒價值了。這種行為其實跟當年Python 3的影響類似(Py3改革,跟2不兼容),雖然官方團隊沒有在語法上硬性破壞代碼兼容性,但是不斷改標準庫,同樣造成了代碼失效的問題——由于不知道什么時候還會改標準庫,其可靠性還不如當年Python 3(畢竟只改一次)。
因為Nim的不確定性,我最終還是放棄了。
另:
目前還在繼續(xù)用Python,實在不行打算用Kotlin重寫一下計算部分。Kotlin依托JVM平臺(Java)沒啥說的,就是整體開發(fā)環(huán)境太重了……