6 ms·
I haven't looked at Erlang before, so I thought I give it a quick look. Google led me to the Erlang home page[1], which has "What is Erlang" (sounds good) and "
by DougWebb 13y ago
I haven't looked at Erlang before, so I thought I give it a quick look. Google led me to the Erlang home page[1], which has "What is Erlang" (sounds good) and "What is OTP" (which doesn't bother to define what O, T, and P stand for.)
Following the Erlang Quickstart [2] link, I get a page that doesn't really tell me anything about the language. It demonstrates a program that implements a factorial function, then tells me to go write games. Other than "Burn the CPU", I'm not sure what kind of games I can write with what I learned here.
The first link to more documentation at the bottom of the page goes to a book's website, so that's a dead end. The second link goes to an online reference guide [3] which seems more promising, until I read the introduction [4]. Under "Things Left Out" is "How to communicate with the outside world". Hrm...
So, what I have so far is that Erlang is a functional language, and that the online reference doesn't cover interaction with anything outside of your program. Based on this I'm guessing that Erlang is one of those functional languages that are great for mathematical proof-like software development but not practical for solving actual problems because the world is mutable and the language constructs are not. Yes, I'm making a big inference here, but that definitely seems like where I'm heading.
So I'm going to stop here, and do some real work in a pragmatic language.
[1] http://www.erlang.org http://www.erlang.org
[2] http://www.erlang.org/static/getting_started_quickly.html http://www.erlang.org/static/getting_started_quickly.html
[3] http://www.erlang.org/doc/getting_started/users_guide.html http://www.erlang.org/doc/getting_started/users_guide.html
[4] http://www.erlang.org/doc/getting_started/intro.html#id62800 http://www.erlang.org/doc/getting_started/intro.html#id62800
- Luc 13y agoCome on. Not exactly a good faith effort, is it? Why type in a rant like this, when you could have found a wonderful tutorial on Google in one tenth of the time it took you to write this?
- gcb0 13y ago100% of erlang tutorials are for fibonnaci.
- Luc 13y agoI don't think so.
- spoiler 13y agoI never understood why every language has a plethora of fibonnaci tutorials. "DO THE FIBONNACI IN X USING Z PROGRAMMING PARADIGM" ok thanks, no more please.
- scott_s 13y agoBecause you already: 1. Know what the Fibonnaci numbers are. 2. How to compute them. 3. Said computation is straight-forward, but it requires some form of looping (either recursion or iteration) and some form of arithmetic. The combination of those traits means that if I present code to compute the Fibonnaci number for an arbitrary number in some random programming language, you can infer a lot about that programming language. In other words, the only variable in that situation is the programming language itself, which allows you to use the other information you already know to learn about that language relatively quickly.
- spoiler 13y agoI never understood why every language has a plethora of fibonnaci tutorials. "DO THE FIBONNACI IN X USING Z PROGRAMMING PARADIGM" ok thanks, no more please.
- mml 13y agoI once challenged Scott Fritchie to give an Erlang talk at our local ruby group (rum.mn) without implementing Eratosthenes' sieve, and sure enough he did, using elevators of all things. I was so impressed with Erlang that i'm still banging my head on it nearly 10 (half-hearted) years later.
- gordonguthrie 13y agoHe's doing this in good faith because I, the original poster, asked him too. This is the best answer on the page (for me).
- Luc 13y agoBut this doesn't tell you anything, other than that someone who's not interested and pressed for time won't put any effort into it. It's a trivial result.
- gordonguthrie 13y agoIt tells you that the primary route to finding out about Erlang for someone who knots nothing about it (ie Google it and have a nosey) its no bloody good.
- pdabbadabba 13y agoWell, if the question is "Why isn't Erlang more popular?" then I would think that pointing out that "someone who's not interested and pressed for time won't put any effort into it" is a perfectly fine answer. The clear implication is that the resources currently available for would-be Erlang adopters require an unrealistic level of interest and time to get them over the hump. It tells an Erlang evangelist precisely what she needs to do: do more to sell the language to people who have little time or inclination to rally dig into a language they otherwise know nothing about. (Of course, while it may be a useful answer, it is not very interesting for the rest of us.)
- Luc 13y ago> the resources currently available for would-be Erlang adopters require an unrealistic level of interest and time to get them over the hump. The person who can't be bothered to even find 'Learn You Some Erlang' also won't have the motivation to learn Erlang. It does take effort, but there now are many good resources available (unlike the situation just a few years ago).
- 13y ago
- vertex-four 13y ago> Based on this I'm guessing that Erlang is one of those functional languages that are great for mathematical proof-like software development but not practical for solving actual problems because the world is mutable and the language constructs are not. It was actually designed to solve actual problems. Specifically, extremely high reliability in some of Ericsson's core networking gear. I'd recommend Learn You Some Erlang[0] if you intend to look at it again. It explains the language, then OTP (the Open Telephony Platform - a framework for defining Erlang process trees and failure modes), then basic outside communication and disk storage. [0] http://learnyousomeerlang.com/ http://learnyousomeerlang.com/
- Guvante 13y agoYou misunderstand his point. He isn't saying that Erlang is a toy language, he is saying that documentation makes Erlang look like a toy language. i.e. showing him how his thought was wrong doesn't change the fact that many other people will probably make a similar thoughts.
- vertex-four 13y agoNo, I understood the OP's point, I just decided to point them towards a better resource in the case that they do want to learn more about it at some point. I agree that the Erlang site is utterly dreadful.
- gordonguthrie 13y agoYessum, it is indeedy...
- Guvante 13y agoFair enough, just misunderstood your tone, my apologies.
- hapless 13y agoFor the record, only one generation of equipment used Erlang/OTP. As a part of Ericsson's hardware platform, it was very short-lived.
- TeMPOraL 13y ago> (which doesn't bother to define what O, T, and P stand for.) It obviously stands for Outlaw Techno Psychobitch ;). http://www.youtube.com/watch?feature=player_detailpage&v=rRbY3TMUcgQ#t=211 http://www.youtube.com/watch?feature=player_detailpage&v=rRb... (Erlang The Movie II)
- asattarmd 13y agoFfs, you're not looking at some small product that an unknown company built. You're looking at something that is really well-known. What does the website of Google convey? Do you really decide whether you'd learn a language by looking at its website? > "that the online reference doesn't cover interaction with anything outside of your program" This does NOT mean it does not teach you IO. The full bullet point is > "How to communicate with the outside world and/or software written in other languages (ports). There is however a separate tutorial for this, Interoperability Tutorial" It means it won't teach you FFI in a tutorial. > "guessing that Erlang is one of those functional languages that are great for mathematical proof-like software development but not practical for solving actual problems because the world is mutable and the language constructs are not." I don't know how you got to this dumb conclusion when "What is Erlang?" on the main page clearly states: > Erlang is a programming language used to build massively scalable soft real-time systems with requirements on high availability. Some of its uses are in telecoms, banking, e-commerce, computer telephony and instant messaging. Erlang's runtime system has built-in support for concurrency, distribution and fault tolerance.
- yogo 13y ago> Do you really decide whether you'd learn a language by looking at its website? I certainly could see myself doing that. It's usually indicative of the leadership and community that's associated with the language. In Erlang's case I understand that it's pretty niche in the big scheme of things, and that might be the reason. In terms of languages if the information presented isn't on the level of Java, PHP, Ruby, Python and others it comes off as sub-par. That may not be the reality but it's the perception IMO.
- doktrin 13y ago> You're looking at something that is really well-known. What does the website of Google convey? The Google comparison is comical. You are wildly over-estimating how well known Erlang is, even in the dev community. > Do you really decide whether you'd learn a language by looking at its website? Most devs learn a new language when it helps them solve a problem. Anyone who needs to solve the problems that Erlang addresses has already at least looked at Erlang. This thread was also directed at those who have never used Erlang. Starting with the Erlang website makes eminent sense. Specific example : Compare the Erland and Rust websites. I've never used Rust or Erlang. I can confidently say that the Rust website does a better job of familiarizing a new user with the language. It's not just a matter of the Rust syntax being C-derived, either. It's simply harder to find any useful information on the Erlang website. Rust : * code sample on landing page * comprehensive tutorial linked directly from landing page Erlang : * no code on landing page * "quick start guide" which is basically a link to a non-free book * Getting to actual code requires 3-4 clicks from the landing page * e.g. Documentation -> Course -> Sequential Programming Conclusion : The Erlang website isn't as useful as that of at least 1 other non-mainstream language.
- mietek 13y ago> The first link to more documentation at the bottom of the page goes to a book's website, so that's a dead end. Why are you saying a link to Learn You Some Erlang for Great Good [1] is a dead end? Have you missed the "Read it online" button? [1] http://www.learnyousomeerlang.com http://www.learnyousomeerlang.com
- coldtea 13y ago>The first link to more documentation at the bottom of the page goes to a book's website, so that's a dead end. Well, you can read the book online, so how's that a dead end? >So I'm going to stop here, and do some real work in a pragmatic language. Well, $16B for WhatsApp, for a company with like 40 engineers, proves that Erlang can be quite pragmatic itself.