先學lisp好還是先學haskell好?

已經學了C++和Python,想學一門函數式語言來開拓(play)視野(zhuangbility),請問是先學scheme(或者CL之類的其他Lisp類語言)好,還是先學Haskell好?


當然是用Haskell寫Lisp解釋器了。

Write Yourself a Scheme in 48 Hours


Haskell開視野,Lisp過把隱,早點用Ocaml幹活


就像 @邵成 說的, 用Haskell實現個Lisp就好了, 看完那個玩具就看完整的實現Husk Scheme

順帶安利下實現Scheme里的各種玩法: 學習 scheme 有哪些資源推薦?


關鍵你要開始學啊……

為什麼這個問題讓我想起了那個:「我以後上哈佛好呢還是上耶魯好呢」 的問題呢……


結論是先學 Lisp。

主要原因是 Lisp 比較簡單,語言一致性較高,優美,沒有(靜態)類型系統的限制,自由,表達能力高,強大。

學習任何東西都應該是由簡入繁。


先學 Lisp 好, 學完 Lisp 再學 Haskell

(我猜一會會有人跑來說學 Erlang 好(逃


Haskell開視野,Lisp過把隱,早點用Scala幹活 抄 @姚培森 的答案^-^


Haskell

因為用 Haskell 調用 Lisp 遠比用 Lisp 調用 Haskell 容易


學 Haskell,選了Lisp ,你還要糾結學 Scheme 呢,還是 CommonLisp,還是 EmacsLisp,還是Clojure,還是 Racket 。。。


左右互搏,同時學。


先學 lisp,然後看看 haskell,說一句:嗯,這東西挺美的!

然後用學 lisp 學到的東西寫C++和 python去。


@開源哥

Erlang好啊,入門容易上手快,還很容易能寫出些「有用」的程序。

Haskell稍微慢點學,可以開闊視野,學了Erlang再學跨度就沒有那麼大了。

Lisp(的各種方言)非常自由,不像Haskell那樣有很多現有的「模式」(好吧,我說的是類型系統),所以要最後學。

Erlang是把雙手劍,鍛煉手臂力量,打怪殺人很給力;Haskell是單手劍,你還要練習使用盾牌;Lisp是匕首,手中無盾牌心中有盾牌。


學哪個都無所謂,反正以後工作用得上的幾率都不大~


拋硬幣吧,反正最後你一定會都學了的。


lisp 然後 haskell 因為後者是個更大的東西


學 @開源哥 他們家的LoLi,然後模仿實現一個Haskell方言


嗯,我是奔著Haskell去的,其實選擇自己喜歡的就好。


如果你只是為了裝逼的話還是學scheme好了,各種讓人看不懂的括弧。

如果想要深入理解pure functional programming,研究各種複雜的類型系統,以及如何實現到編譯器上,haskell比較好。

如果想學學函數式編程的思維的話,都可以,不過建議scheme。


目的和題主一樣,為啥我選了 Elixir 。


推薦閱讀:

對 Lisp 新手來說,學習哪種方言、使用哪些參考書和開發軟體更適合?
SICP換零錢迭代方法實現,是如何寫的?
根據遞推關係,如何編程計算這個數列的前10項?
入門 Lisp 有哪些在線資料?
Emacs 的配置文件為什麼會用 Lisp 語言來寫?

TAG:函數式編程 | Haskell | Lisp |