看到一份激進的文章說Clojure要統治編程語言,是否應該開始學習clj?

本人做前端的,看到一份資料寫clojure很厲害 性能是react的十倍 但是個人看了一下覺得 就是react + immutable + fp 用react技術棧並不是不能達到,為什麼就十倍性能了 ,別的語言不了解,但是clj對每一門語言的修改 是不是真的到了那麼強大的地步,是否應該開始學習clj,請大神指點,謝謝。

以下是我看到的ppt內容


沒有說的那麼玄乎。clojurescript 當年秒 react,但 react 也能修掉問題跟上來,優化得好性能超過 cljs 也很正常。clojure 在語言設計上是吸收了一些先進的理念,我也分享過,JavaScript 野蠻生長加上很多歷史包袱,問題很多,clojure 設計時深思熟慮其實好很多。但是說到學不學,還要看立場。你要了解好的語言設計是怎樣的,學一下 clojure 當然很有好處。但是作為老闆的話,手下員工學 clojure 要花時間還要依賴 clojure 社區足夠成熟,目前看來未必划得來,很多程序員的知識功底都不在這方面,要學起來很累很低效。


Kotlin有四個後端,JVM JS LLVM Dalvik

JetBrains多低調,就自己慢慢搞,Android也茲磁,iOS也茲磁,TensorFlow能調用,前端也能寫。

別的就不說了, Haskell Dart Idris等語言都有多於一個的後端且基本上是一個vm/llvm的一個js的。

Clojure只是做到了這些語言都做到了的事情之一罷了。


實話說 這個ppt觀點不敢苟同

我也是lisp/fp的追隨者,但是靠這些所謂的優點營銷,著實讓我大跌眼鏡


我之前工作上寫了半年的coljure,是個不錯的語言,但是看不出有統治的能力。

不說其他的,就lisp那個語法,真心不像可以流行的樣子。


任何一種語言都可以說自己將統治未來世界,但目前最接近統治世界的卻是當初用七天發明的一個玩具語言,作者也沒口口聲聲說這個語言比其它語言優越在哪裡。

一看到那些列出優點就想證明自己將統治世界的語言,請重讀這個「將」字。


你說 clojure 後端多,那 idris 後端也多,我能不能說以後 idris 會統治地球呢?人家可是能確保程序永無 bug 的哦


不太可能,語言無論其設計的好壞,關鍵還是好用與否。Python就很好用,有大量的庫。我承認clojure是一門不錯的lisp,但是真的用它來解決問題,不一定很方便。lisp對大量的有狀態的系統基本上是應對無力的。lisp長於計算,特別是處理數據。clojure也不例外,另外它又需要和Java兼容以便使用Java的類庫。因此上手難度還是有些高的,其並發控制的那些東西,工作起來很有些神秘的感覺。


Clojure異端!燒死!


震驚世界

這又是uc他們做的ppt?


前端就不要用cljs了吧。後端用的話我覺得入手沒問題


作為lisp語系,已然被大多數人自動過濾了,一統前後端還不如說是前後端都沒多少人用。至於10倍性能,這個倒是有可能性能更好。但是 om/reagent 都是 react 的 interface 不知道這個作者在聊什麼。網頁實時更新,說得好像是別人都沒有網頁實時更新一樣,用一個2k stars 的庫玩這些,出了 bug 正好就可以自己改 figwheel 了,然後進軍開源界,保衛世界和平...


十年後,C,C++,Java依然存在,依然是核心,是基礎。

而其他語言,只會被淘汰,煙消雲散。

二十年後,三十年後,依然如此,基礎語言永遠只有那麼兩三個,能稱得上統治的,也只有這些基礎語言,用語言理論評價,都很爛,但就是會一直存在,而那些符合語言理論的,再優雅再簡潔,也只會被實際的世界給撕碎。

語言好不好,會不會長存,和語言本身的關係基本沒有。想要替代C,C++,Java三神,至少要經過兩場血雨雷暴,和世界各地無數資金的瘋狂燃燒。但可以肯定的是,絕對不會是現在這些各種胡吹的無聊「新」語言。


哦?是嗎?

我的Malt語言準備做五個後端(短時間內預計只有一到三能實現)

1. MaltVM

2. JavaScript

3. cpython 解釋器

4. llvm

5. JVM(Hotspot)

所以說這些東西凡是作者蛋痛一點都能做到

沒什麼了不起的


真的很喜歡clojure和clojurescript,但是這個ppt肯定是瞎扯的。

om和原生的js相比有幾個地方有點區別,1是cljs裡面全是immutable data,js要用immutablejs來得到對應的效果;

2是om的diff是從transact發生的節點開始的,react是從root組件開始的,這個似乎redux是從connect的位置開始的?(不是很清楚)

3是cljs編譯之後還會有一步closure compiler編譯,這步影響不是很大。

不過10倍性能真的是胡說


求不黑clojure,這是我最喜歡的語言了,不喜歡它可以無視啊


呵呵,早就有人說lisp一統天下了,你這模仿得並不高明


應該看下github mal項目 在64種語言里實現lisp....


先寫幾個小程序試試嘛,很多人數括弧就數崩潰了,包括我…


一堆圓括弧,寫個複雜的程序,不饒暈了才怪。還想統治世家?


我越來越覺得這些是傳統編程界崩塌的前兆,搞一堆新瓶裝舊酒的玩意,不外乎就是製造點概念,然後營造一個繁榮假象來自我保護罷了。你們人類還是 Too simple,Too naive.


推薦閱讀:

今天阿里巴巴的面試官打來電話,問了一個問題,大概內容如下?
OOCSS、 SMACSS、 BEM、MVCSS你們在用哪個作基礎?
現在前端市場是不是已經飽和了?
怎樣才是優秀的前端工程師?
請問下93年的我,現在學編程晚嗎?

TAG:Web開發 | 編程 | 前端工程師 | 函數式編程 | 前端架構 |