开始学习erlang,越看越舒心,稍稍有点担心

2012-05-12 20:20:58 +08:00
 myrual
开始看 programming erlang,短短的几个小时就让我感到十分愉悦。之前学习f sharp的经验有了很大帮助。而且发现我之前用f sharp的时候还有一些不是很正宗的地方。
只是有点担心假设我真的写了一些能工作的代码,别人是不是真的没法学习?

看来还是要依靠我昨天灵感爆发画出来的架构图,把系统分解,直到复杂度降低到我周围的人可以理解和实现的水平。
9281 次点击
所在节点    Erlang
15 条回复
eric_q
2012-05-12 21:05:59 +08:00
哈哈,Good luck!
virushuo
2012-05-12 21:41:00 +08:00
我觉得真的不如学go…
C族群的语言更容易被理解和学习(也许是因为习惯了?),FP总是更难理解。虽然我看了SICP但还是不愿意去写FP语言,只愿意偶尔看看和讨论问题。最后实际能应用起来的可能性,还是go更大点吧。
myrual
2012-05-12 22:01:36 +08:00
@virushuo 你提醒了我。FP确实需要另一种完全不同的思考方式。考虑到team内的情况,FP的语言还是应该避免,erlang还是进入我的技术储备吧。
仅仅就我个人的学习实践经验来说,初学FP最大的困难在于转变解决问题的思维方式。 被命令式的思维束缚越紧,可能越不容易理解。

个人觉得FP最大的优点是代码表达能力强,短,几乎没有bug。
最大的缺点在于对于使用者的要求比较特别。
-------------
明天开始go语言的学习。
virushuo
2012-05-12 22:04:31 +08:00
@myrual 对。现在的计算机学习是从理解计算机原理开始的,C是最计算机的最小抽象,C族的语言都是简化这种抽象,但路数一样。我一直想知道如果有个人,对计算机一无所知,先学了一种FP语言会怎么样。其实FP更能对应现实问题和数学描述,理应更容易。但好像很难找到这样的实验机会了。

等我有了孩子没准可以上来不让他知道有计算机这东西,先教FP语言当作一种思维方式…哈哈
reus
2012-05-13 03:13:55 +08:00
我也在看erlang,看的是erlang and otp in action,同样感觉舒服
虽然go也有轻量级进程用于并发,不过分布式和容错方面不如erlang
bhuztez
2012-05-13 10:37:16 +08:00
@virushuo go根本就用不了啊。只是语言规范确定下来了,相关的库还不多,另外,也太底层了。
而 Erlang 的语法已经很接近 C 了。Erlang最重要的特性是它真正实现了消息机制,这是其他知名语言都没有实现的。你是希望自己用 go 很痛苦地自己山寨一个类似 OTP 的东西,还是希望用现成的。Erlang的FP并没有引入多少特殊的概念。
adamsxu
2012-05-13 10:58:12 +08:00
@virushuo Go目前为止还是太年轻了,书没多少,关键是最佳实践还不成熟,需要花很多时间去填坑,以及工具和库相对还是少了点。
myrual
2012-05-13 13:48:45 +08:00
考虑现实情况,还是不用erlang来吓唬队友了。go也是属于备选方案。
首选方案是设计一些容易实现的功能模块,保证每个模块独立工作,模块之间只通过网络传输内容,。然后通过模块的组合来满足目前的需求。
这样可以保证队友可以在这个项目上贡献力量,虽然可能存在各种问题,但是可以保证整体架构可以工作,而且把问题的复杂度降低了。等遇到性能问题,可以根据实际情况优化几个模块。
总比我自己写全部的代码好很多。
当然,运行费用一定高,多个服务器是必须的。
响应速度估计也不快。
总体来说,就是以做出来,能工作为目标的方案;不是以性能,可扩展性,降低运营费用为目的的方案。

但愿我能把这个东西做出来。
ikbear
2012-05-13 14:06:14 +08:00
@bhuztez 我们公司的核心产品试用go写的,说go根本用不了的只能说明你只看到它的库不够。
bhuztez
2012-05-13 21:40:56 +08:00
@ikbear 你只是不想学 Erlang ,于是就找了个借口说 go 也可以嘛。
dhysum
2012-05-13 22:07:08 +08:00
为什么没有人提到smalltalk呢?
hpyhacking
2012-08-24 07:00:17 +08:00
erlang的代码被一些人誉为最容易阅读的代码,原因之一就是代码所表达的意思非常明确并且准确。
zephyro
2012-08-24 07:11:02 +08:00
提高编程能力,学习一个FP语言是很重要的,就算不是为了生产目的,介绍组内学习也很好啊。
cgduan
2012-08-24 08:59:03 +08:00
f# 这语言怎么样?
JohnBull
2022-09-21 13:54:07 +08:00
哈哈,我也是 2012 年看到 Erlang 中毒的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/35634

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX