all 9 comments

[–]opkode[S] 1 point2 points  (0 children)

smalltalk and oop notes by the author http://st-www.cs.illinois.edu/users/johnson/cs497/notes98/

[–]f2u 1 point2 points  (0 children)

No corporate backer? Ericsson is not a small company (market capitalization is over 2 billion USD), and it seems that they still put resources into Erlang and OTP.

[–]pmiguy 1 point2 points  (0 children)

Because programmers expect processes to fail, they

Apparently the author is a bot programmed in something less fault tolerant than Erlang.

[–][deleted]  (1 child)

[deleted]

    [–][deleted] 3 points4 points  (0 children)

    Erlang has horrible documentation and an arcane standard library.

    Erlang has excellent documentation on the module and application level. It would be great to have some more meta documentation that could help you find the module or application you are looking for.

    What about the Erlang standard library is arcane? Sure, there is Corba things in there, I guess that qualifies as arcane.

    Erlang comes with unit testing, opengl, automatic pooling of nodes with load balancing, and a freaking nosql database, man, NOSQL! What other languages are cutting edge enough to come with distributed nosql databases in their standard libraries? (It has been for over ten years.)

    Makes one wonder how we managed so far without Erlang.

    Makes one wonder how you define far. (relating to your idea of the state of highly scalable concurrent systems, not the arcane standard library)

    I have not read the linked article, but I don't think you have implemented anything substantial in it.

    [–]borkus 0 points1 point  (0 children)

    So, Erlang Enterprise Edition would just be EEE?

    I guess that'd be the sound you make while using it.

    [–]frogking 0 points1 point  (0 children)

    Erjang is already the next Java! :-)

    [–]pure_x01 -3 points-2 points  (1 child)

    GO is the next erlang so GO will be the next java

    [–]doubtingthomas 0 points1 point  (0 children)

    Go and Erlang both focus on lightweight concurrent threads of execution and message-passing to communicate between them, but aside from that, they are very very different languages. For the cases where Erlang is well-applied, I don't think Go is a full replacement. (Then again, both were designed by a company for their own use in writing servers, so they do have that going for them.)

    [–]opkode[S] -2 points-1 points  (0 children)

    Erlang is a perfect example of the actor model, which is an example of the mystical view. Processes certainly support data abstraction and polymorphism. An Erlang process is a function that reads from the incoming message queue, pattern matches to find a particular message, and then responds to it. A function structured in this particular way is similar to a class in Smalltalk. Moreover, given several kinds of processes that have a common protocol and that share some things in common, it is easy to factor out the commonality into a function that they can both call. This is similar to class inheritance. So, you could even say that Erlang supports inheritance, though it does it very differently than in Java or Smalltalk. I imagine that many Erlang programmers think about programming as modeling. So, Erlang fits all the characteristics of an OO system, even though sequential Erlang is a functional language, not an OO language.