想学习一种FP语言,你的推荐会是什么?


#1
  • Haskell
  • Clojure
  • Scheme
  • Racket
  • OCaml
  • CL
  • Elm

0 投票者

暂时只想到这些,如果你有更好的选择,请在下面留言,谢谢!


#2

Fortran 吧。


因为 Fortran 的作者才是开创 FP 的第一人 Can Programming be Liberated from the von Neumann Style?


如果是 OOP 的话我绝对会推 CL。Clojure 恕我直言在搞 CL 的人看來就是个傻x玩意。Elm 不熟不好评价。我可能喜歡 OCaml 多一点但只用 Haskell,但你想学的函数式编程和他们搞的其实完全是两回事。Racket emmm,basically sucks。Scheme 讲道理是用來学并行编程的。


#3

Seriously?


#4

所以为什么不试试 Rust 呢?


#5

我想说Scala,会不会被打 :joy:


#6

学习用,我觉得scheme还是不错的。熟练后,再写其他代码的FP也得心应手。

Rust听说听不错,下一步有时间学一下。目前是golang的项目,先把go用熟再说。


#7

Elm 放选项里不太合适吧。


#8

Why? 愿闻其详


#9

嚯嚯,我投了 Racket 和 Haskell
因为社区活跃呀 :sunglasses:

(虽然我都没学会)


#10

大概是因为只算个用来生成网页的框架。


#11

Haskell 社区活跃吗?为什么我 Google 到的一般都是三四年前的回答


#12

Elm 感觉挺有前景的,虽然 js 我不怎么写


#13

活跃得很,半年前的 Haskell 代碼放到現在就编译不过了。反过來現在的代碼用半年前的编译器也编译不过。

因為你估计还在用 Haskell98,还沒有接觸到 State Monad, Type Check Monad, Non deterministic Monad, 各种半新不新的 type class 以及 RankNType,UndecidableInstances,GADTs 这些常用扩展。


#14

:joy:

这也是槽点之一啊,OCaml 貌似好一些


#15

Haskell 和 hy 先搞起,对 elm 也有些兴趣


#16

借个楼问下,想了解lambda calculus,有没有推荐的paper/tutorial


#17

只推这一本。别的基本不用看。


#18

:joy: 两个作者名字都很眼熟啊


#19

Scheme入门比较好,先了解一点思想,可以看SICP,之后看haskell,可以了解很多概念。

之后可以了解一下idris,根据haskell把很多历史因素和不优雅的部分去除了,粗略得可以认为是haskell子集(官方文档说还不成熟,实际上各种支持也相对较少)

至于ocaml先不说实践,把对象和纯函数绑在一起不是不可以,但语法有点微妙,完全不像haskell等其它ml语言那样,看起来非常难受感觉(个人)。

其它没了解过。。不太好说。。


#20

我用起来最难受的是 repl 和编译器都慢到一种境界了。

我用基本没有什么 polymorphism 支持的 SML 感觉更难受。