4 ms·
I don't think so. Erlang combines powers of Scala and Node and adds some of its own - selective receive, for example.
by thesz 15y ago
I don't think so. Erlang combines powers of Scala and Node and adds some of its own - selective receive, for example.
- davidw 15y agoYou don't think what? If it's not clear, I am saying that I think Erlang's runtime and API are superior to callback spaghetti. What we may not agree on is whether Node and Scala are going to surpass Erlang in terms of popularity. I think it's only a matter of time. Those two systems are based on languages/runtimes that are orders of magnitude more popular than Erlang and are thus far more accessible. Being far more recent systems, as well, they also avoid some of the strange warts that Erlang must keep around because it's widely deployed enough that it can't be easily changed.
- thesz 15y agoI don't think that Node or Scala alone will eat Erlang's lunch. Combined - maybe, but highly unlikely anyway. By the way, Erlang releases often break backward compatibility. And what are those warts you mentioned?
- moe 15y agoThe syntax.
- davidw 15y agoThe syntax is tough for newbies, strings/lists being conflated is ... not so nice, macros/include files are ugly. Records - ugly! Command line options make it inconvenient for scripting tasks. Lack of libraries (compare with Scala, which has access to pretty much all of Java), no code repositories, ala rubygems. Also: it's more verbose than languages like Ruby, but not as fast, generally, as things like C or Java, putting it at a bit of an odd place for me. They're mostly minor nits, and don't prevent me from liking and using the language, but I'm skeptical about it ever being more than a niche language. Yes, obviously other languages have succeeded without having all those things, that's just the laundry list off the top of my head.
- thesz 15y ago>I'm skeptical about it ever being more than a niche language. Most of languages today are niche. Non-niche languages can be counted with one hand, I guess. If we define "non-nicheness" as a "confidence in the use of language in a new project of majority of programmers/managers" I think we will be left with Java, C# and C++. All other languages will plug holes left from main ones. Erlang, Scala and Node are good niche languages. And I see a Node as a "precursor" for Erlang, actually. It opens lightweight threading for masses. And Node is so clumsy in use (callbacks!) that syntax won't be a big barrier in the use of Erlang. Semantics win over syntax.
- davidw 15y agoIf we look at language popularity, you're right about Java, C# and C++, but you forgot PHP and Javascript. The latter, being the only thing you can code with for browsers, is ubiquitous. Python, Perl and Ruby are all up there as well. There's a fairly sharp dropoff after those. http://www.langpop.com/ http://www.langpop.com/ I'm not sure how Scala will fare, but it's already about as popular as Erlang, and of course Javascript is way past it. Of course, they're nearly all browser users of JS, but still, knowing the syntax and having an idea of how it works makes for a far easier jump than to a functional language like Erlang.
- thesz 15y agoI must note that there is a big step between "having and idea of how it works" and "use it productively". That's where difference between Erlang and JS on the server side is the most sharp. When I offered my definition of non-nicheness, I had big inter-disciplinary projects in my mind. Something like online IDE, for example. Or electric scheme editor. You cannot cover all IDE needs with only PHP and JS. Most of logic will be in other languages and I think that the use of PHP/JS will be shrunk to non-irritating levels. But I reserve my right to be wrong. And thank you for langpop.com. It is worth a look.
- Xurinos 15y agoInteresting nits. In my earlier days, I explored Erlang and found it very easy to pick up. The only challenge for me at the time was thinking the ML way. I was very excited about the actor model. The syntax never bothered me. In a way, I actually thought (and still think) it is quite beautiful. As far as libraries are concerned, google is my repo. I have never understood the need for gems, CPAN, and so forth, since none of those are any more regulated for code quality than other random things on the net. Where do people go to find C or C++ packages? Google for me. But I did browse this for anything I thought I needed: http://trapexit.org/Special:UserContributions http://trapexit.org/Special:UserContributions That said, I thought the binaries were a bit painful. I suppose it just boils down to opinion.