Live data from Hacker News

Ask HN: What have you built with Erlang?

news.ycombinator.com

31–40 of 48 posts

Re: Ask HN: What have you built with Erlang?

#31
post #24
post #16

Earlier quoted context omitted.

yes indeed I'm increasingly using couchdb, planning on picking up erlang and it would be useful to avoid the mailing list if you can pass info along...

This was a few years ago, so my memory is foggy and things might have changed, but I remember how uncomfortable erlang felt in a unix environment. I might have felt the same way about java, since its also sandboxy. I think the first time I hit the mailing list was because I couldn't figure out how erlang can boot up and change its effective user id. (setuid). The reason being it needs to grab a privleged port as root…

You can really tell that erlang evolved to run self sufficient on special hardware and not in a supportive unix environment.

Well yeah, it was written to run telephony equipment. It's not a general purpose language, though it has been moving that way.

Re: Ask HN: What have you built with Erlang?

#32
post #31
post #24

Earlier quoted context omitted.

This was a few years ago, so my memory is foggy and things might have changed, but I remember how uncomfortable erlang felt in a unix environment. I might have felt the same way about java, since its also sandboxy. I think the first time I hit the mailing list was because I couldn't figure out how erlang can boot up and change its effective user id. (setuid). The reason being it needs to grab a privleged port as root…

You can really tell that erlang evolved to run self sufficient on special hardware and not in a supportive unix environment. Well yeah, it was written to run telephony equipment. It's not a general purpose language, though it has been moving that way.

AFAIK it was written as the research, not to run at any specialized hardware, then "sold" as being able to run the phone switch, but it needed a "big iron" computer attached to it just to drive that switch (!) -- it was that slow. And AFAIK it's still very slow. Up to quite recently it wasn't even able to use more cores.

Re: Ask HN: What have you built with Erlang?

#33
post #25
post #23

ErlyWeb, an open source web framework: http://github.com/yariv/erlyweb/ . Twoorl, an open source Twitter clone: http://github.com/yariv/twoorl/ . Vimagi, a graffiti-like facebook app: http://apps.facebook.com/vimagi-paint . Also, parts of Facebook chat (I work at Facebook).

Also, thanks for your work on mysql driver, which I happen to use for PavoMe.

HN is such a nice community :)

Re: Ask HN: What have you built with Erlang?

#35
Simple stuff, but:

- An IRC bot -- great fit for the language

- A URL shortener service (three times) -- first on Yaws, then on Nitrogen, then on ChicagoBoss (Hi EvanMiller!)

Erlang is the most fun I've ever had writing code. While a lot of that is the functional language aspect, I find it an extremely intuitive language at least at a low level (once you get past the 'there are 4 ways to end a line?!?!' stage). I'm still getting used to thinking through bigger problems in an Erlang way, but thats more a function of my brain than the language.

I think Erlang gets a lot of unfair knocks given it's pigeonholed reputation for 'concurrency and fault tolerance'. Certainly it has it's limitations (libraries), but generally, I think its a pretty well-rounded general purpose language.

Re: Ask HN: What have you built with Erlang?

#36
Super late (a misjudged apache-bench got me banned for a day or something), but: http://darcsden.com/alex/aliter

It's a reverse engineering of a popular MMORPG called Ragnarok Online (or RO). Last time I was working on it, you could log in with the official client, walk around, teleport, chat, etc. (The walking had to be done in C, though; one pathfind per walk request is not something I'd want to leave to Erlang.)

Re: Ask HN: What have you built with Erlang?

#37
post #32
post #31

Earlier quoted context omitted.

You can really tell that erlang evolved to run self sufficient on special hardware and not in a supportive unix environment. Well yeah, it was written to run telephony equipment. It's not a general purpose language, though it has been moving that way.

AFAIK it was written as the research, not to run at any specialized hardware, then "sold" as being able to run the phone switch, but it needed a "big iron" computer attached to it just to drive that switch (!) -- it was that slow. And AFAIK it's still very slow. Up to quite recently it wasn't even able to use more cores.

Where did you get all that from? Erlang was never intended for research but as a tool for writing real switch applications. Yes, the original Prolog interpreter was slow, but that has not been used for almost 20 yrs. We never had "big iron" computers to play with, and never really needed them either as the system has been efficient enough to run on computers that were cost effective for the actual applications. The implementations have always been optimised for applications that are highly concurrent and extremely fault-tolerant, like telephone switches. Yes, it was a bit slow in being able to use more cores but that was because Ericsson, who still maintains the BEAM implementation, did not have need of it. Now, it will take as many cores as you can throw at it, and be able to use them if you have written a truly concurrent application (Amdahl's law). Transparently too.

Re: Ask HN: What have you built with Erlang?

#38
Mostly toy projects, many of them still in development.

A little homemade web framework. A blog compiler to generate a static site. A one-on-one chat client to be integrated with other already existing websites, a browser-based version of the Apples to Apples game, a brainfuck interpreter, maze solver, etc.

Re: Ask HN: What have you built with Erlang?

#39
I did several small Erlang projects and now working on two relatively large.

Erlang is a good fit for:

* Irregular concurrency: Task-level, Fine-grained parallelism

* Network servers

* Distributed systems

* Middleware: Parallel databases, Message Queue servers

* Soft Realtime / Embedded applications

* Monitoring, control and testing tools

Not so good fit for:

* Concurrency more appropriate to synchronized parallel execution: Data Parallelism

* Floating-point intensive code (HPC)

* Text Processing / Unicode (Unicode support now much better)

* Traditional GUI (some improvement with wx now)

* Hard Realtime applications

* Extensive interop with other languages/VMs (some improvement here with NIFs and Erjang - Erlang on JVM)

* No Windows 64-bit VM

I using Erlang for the things listed under "not so fit", because it's advantages out-weight some incomvinience.

Re: Ask HN: What have you built with Erlang?

#40
I built a real-time news widget that streams (hyper)local news and public records (marriage licenses, liquor permits, etc). Media companies partner with us http://nozzlmedia.com we've doubled the time visitors spend on their Web pages.

Erlang was a good fit for us, mostly because of the tools available around it, such as Nitrogen http://nitrogenproject.com a powerful JavaScript/Erlang framework. Erlang apps seem robust and lean.

Post reply on HN