开发者

Is it worthwhile learning erlang? [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance. Closed 11 years ago.

I was wondering is it worthwhile learning a language like Erlang. I am开发者_如何学Go looking at learning a new language and the following questions are on my mind :

  • Will learning functional programming help me/improve as a programmer?
  • Industry Usage of Erlang/ projects using erlang ?
  • Any real future in learning erlang from a career point of view?
  • Possible advantages/disadvantages of erlang over python/PHP/ etc

Thanks, Vicky


Coming from Scheme here so I can't speak much for Erlang. But as Scheme is functional as well, let me try to convince you.

Will learning functional programming help you as a programmer?

Absolutely. I've heard a lot of reasons for this, some I can attest to, others not (yet). Actually, in my opinion, it's moot trying to convince people that functional programming is worth learning at all, especially when there's a lot of press about Python/PHP/Java(Script)/etc. They have to be convinced for themselves, when they learn it.

As for me, Scheme allowed me to appreciate recursion more. Sure you rarely use recursion in other languages due to limited stack space but as a lot of algorithms are described recursively (albeit implemented iteratively, that is, using loop constructs), implementing them recursively should give you a better appreciation for them.

Industry use of Erlang?

Pass. Though I recommend looking around at Commercial Uses of Functional Programming.

Learning Erlang for a career?

I'm not the person to ask so I can't elaborate but I've heard that FP proved to be very useful in parallel computing. Talk about the future!

Advantages over Python/PHP/etc?

It's functional so it is a good practice for mathematical thinking about algorithms, which is not very apparent (at least for me) when you code in a procedural language. Also, look at the results of Programming Language Benchmarks. It seems that functional languages are faster than those you mentioned (LISP, Haskell, Erlang). Python goes after Erlang but Erlang sure is faster by around half of Python's time! And look at Erlang HiPE: 10.22 seconds! (I'm looking at x64 Ubuntu Intel Q6600 quad-core---parallel processing gave them a leg-up?)

TL;DR Go ahead and learn it. You'll thank me, I'm telling you ;D

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜