Hacker News new | ask | show | jobs
by waynesonfire 224 days ago
One of the features I really like about the BEAM is that it solves the problem of organizing the topology of the applications I build. It's unlikely you're even close to doing this in other languages / frameworks.

The supervisor tree is one of the killer-app features of BEAM. I hit the benefits of this ALL the time. I notice how it keeps getting solved over and over again in unique ways that are half-baked. In some ways, this quote is what I'm hinting at, except, things don't even have to be concurrent. That's just a cherry-on-top.

"Virding's First Rule of Programming: Any sufficiently complicated concurrent program in another language contains an ad hoc informally-specified bug-ridden slow implementation of half of Erlang."

I'd also argue that "sufficiently complicated" bar isn't very high.

1 comments

There are matured ways to do multi-service outside of BEAM. I get that it's extra work vs something built in, but this is only an issue at large scale, and you'd probably need to set that up anyway unless every service is Erlang/Elixir.