10 ms·
All built on the JVM which has its own set of issues compared to BEAM or natively compiled Go or Rust.
by bfrog 12y ago
All built on the JVM which has its own set of issues compared to BEAM or natively compiled Go or Rust.
- tormeh 12y agoYeah, both Java and (currently) Scala are imperfect host languages as well. Global GC is not ideal. Everything's not golden, and it's not better than Erlang in general, but Scala+akka is really awesome for a lot of tasks. For most people looking at Erlang, Scala+akka will be more suitable, I think. Still, if I were to write something powering some really reliability-heavy stuff (like telecom stuff) I would probably go with Erlang.
- dragonwriter 12y agoScala+akka may be easier for Java programmers looking at Erlang, and perhaps enough so to make it "more suitable" when you look at net cost/benefit. OTOH, coming from other directions -- particularly dynamic languages -- Erlang may be easier, as well as its other advantages.
- muraiki 12y agoFor people coming from dynamic languages, especially Ruby, it's worth looking at Elixir. Elixir runs on the Beam VM (same as Erlang) and is fully Erlang compatible while fixing many of Erlang's warts, including offering a Ruby-inspired syntax and macros. Here's a fun introduction: http://howistart.org/posts/elixir/1 http://howistart.org/posts/elixir/1
- dragonwriter 12y agoI agree that its worth looking at (and I need to find time to take another swing at it), but I have to admit that when I came into it from Ruby (having also had some experience with Erlang, but not need), I found the Ruby-like syntax with very different semantics an obstacle rather than a help -- it had a kind of "uncanny valley" effect.
- lostcolony 12y agoThat's been my defense of Erlang's syntax ever since I learned it. Having it be unlike anything I'd experienced before meant it was easy to learn, because I wasn't trying to shoehorn my own expectations upon it. And I'd wager it's why the if statement strikes so many people as being completely weird and 'broken' in Erlang.
- tormeh 12y agoIt's about 10 times faster, the language has way more modern syntax and constructs. It is not constricted to the actor model only. Erlang has perfected a subset of Scala+akka at slower speed.
- tormeh 12y agoEDIT: There's enormous value in perfection, just to be clear.
- pjmlp 12y agoThere are commercial JVMs that offer compilation straight to native code ahead of time. AOT compilation is also being discussed for OpenJDK 9, or 10 depending on the overhaul progress.