TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Erlang is not a Concurrent Functional Programming Language

28 pointsby pufuwozualmost 14 years ago

3 comments

KirinDavealmost 14 years ago
Interesting article, but the worst title ever. Erlang <i>is</i> a functional, concurrent programming language. It reduces all non-trivial programs to actor-model concurrency, with an implementation that does green threads multiplexed over native threads. If you ignore this fact, your programs will either be very slow or very wrong.<p>What we might <i>sell it as</i> is an interesting and fair question, but to say it <i>is not</i> a thing which it clearly is, that's wrong.
评论 #2578241 未加载
geoffhillalmost 14 years ago
Author is mixing up Erlang with OTP. Erlang is a concurrent, functional programming language. OTP is package of design patterns for building reliable systems.
评论 #2578277 未加载
asymptoticalmost 14 years ago
"con·cur·rent    [kuhn-kur-uhnt, -kuhr-] –adjective 1. occurring or existing simultaneously or side by side: concurrent attacks by land, sea, and air. "<p>In conjunction with:<p>Inside the Erlang VM with focus on SMP <a href="http://www.erlang.org/euc/08/euc_smp.pdf" rel="nofollow">http://www.erlang.org/euc/08/euc_smp.pdf</a><p>"Measurements from a real telecom product showed a 1.7 speed improvement between a single and a dual core system.<p>It should be noted that it took only about a week to port the telecom system to a new OTP release with SMP support, to a new Linux distribution and to a new incompatible CPU architecture, the Erlang code was not even recompiled.<p>It took a little longer to get the telecom system in product status, a few minor changeswas needed in the Erlang code because Erlang processes now can run truly parallel which changes the timing and ordering of events which the old application code did not count for."<p>Besides the awful grammar, QED. I rest my case: Erlang, and not just Erlang OTP, is concurrent (think of it this way: spawn_link() isn't restricted to OTP). I think it's quite clear Erlang is also a functional language. Please refute with references.