瞎扯淡 大佬们是喜欢 Erlang 这种变量不可以变的,还是 Clojure 这种变量可变的函数式语言?

yfractal · 2019年01月15日 · 最后由 davidgao 回复于 2019年01月24日 · 2539 次阅读

如题

不是大佬,喜欢可以赚很多钱的语言

变量不可变只是假象,你进程 id 指向的那个东西不还是可变的

😂 好像没什么所谓。

Erlang 的优势并不是变量不可变
Clojure 的强力点是 JVM 和 Lisp 宏的结合

个人使用的 Erlang 和 Common Lisp,少量 Haskell,近期入坑 OCaml。职业上用 Erlang 和 Javascript。 如果讨论喜欢程序,我喜欢 Erlang,OCaml 和 Common Lisp,比较讨厌 Clojure 和 Haskell。

如果问为什么,Erlang,OCaml 以及 Common Lisp 简单实用,减少代码量,减少 Bug。

lanzhiheng 回复

Clojure 是这种

m = {}
m = (assoc m {:a => 1})

写起来容易,状态变化不那么清晰。

Erlang 的话是,

M = {}
M2 = maps:update(a, 1, M)

写起来麻烦,但状态辩护会更清晰。

yfractal 回复

如果真要选的话,其实个人比较倾向于后者,虽然个人写前者比较多。审阅代码的人压力也没那么大。 👀 👀 👀

lisp 方便了编译器,麻烦了人。。

pynix 回复

Lisp 需要有好的编辑器,例如 Emacs,然后有一个超级长,超级大的屏幕。

还有一个选择就是,写足够短小的函数。

pynix 回复

然后 lisp 粉各种瞧不起大 JavaScript

davidgao 回复

人肉编译器。

pynix 回复

会很伤眼睛的,并且我觉的 Lisp 这东西大神和新手写的东西差距悬殊(我做过 Common Lisp 的项目,被各种大神给虐菜了)。

davidgao 回复

写着累。。。

pynix 回复

写着还好还好,Emacs 配置好了,还算可以。

davidgao 回复

职业上使用 Erlang 和 JavaScript。现在国内有 Erlang 公司吗?好像很少的感觉。

lanzhiheng 回复

是的,国内用 Erlang 的公司很少。 我是前端,前端都有中间层,我的中间层用 Erlang。 以前公司用的是 Ruby 和 RoR

并且在非工作时间,我主要用 Erlang,Common Lisp,目前入坑 OCaml 中。

lanzhiheng 回复

有,不多。广州游戏公司用的比较多。有些 im 也是用 erlang,比如去哪的 im,比如我们。

davidgao 回复

同是前端,不过现在主要写 Ruby。业余时间会考虑试试 Haskell

yfractal 回复

一时没反应过来,你说“我们”的时候。我就在想豆厂什么时候用过 erlang。

lanzhiheng 回复

已经弃坑 Haskell 了,还是希望自己少掉点头发,改用 OCaml 了

需要 登录 后方可回复, 如果你还没有账号请 注册新账号