←back to thread

188 points taddgiles | 7 comments | | HN request time: 0.411s | source | bottom
1. fbn79 ◴[] No.45311033[source]
I never used Erlang, and I'm a functional programming fan. But languages based on heavy VM that abstract OS away always make me doubt that's the right direction.
replies(2): >>45311130 #>>45312582 #
2. andrewflnr ◴[] No.45311130[source]
That's not a crazy instinct, and maybe if OSs were better you would even be right, but there's not really another way to get a skrillion communicating processes that can all crash/fail independently. Without a dedicated VM, all the other approaches are either less safe or too inefficient.

I consider BEAM an indication of a direction that OSs could and maybe should move. It's even possible to run BEAM on bare metal, (almost?) entirely in place of the normal OS.

replies(1): >>45311258 #
3. linkdd ◴[] No.45311258[source]
> It's even possible to run BEAM on bare metal, (almost?) entirely in place of the normal OS.

How? With a unikernel?

replies(2): >>45311282 #>>45311299 #
4. signa11 ◴[] No.45311282{3}[source]
i would think so, no other option afaik.
5. thomasfortes ◴[] No.45311299{3}[source]
Using GRiSP Metal, not exactly without an OS, but using a real time OS designed for embedded devices.

https://www.grisp.org/software

6. cess11 ◴[] No.45312582[source]
What makes you think the BEAM VM is "heavy"?

It's almost like an OS in itself and initially designed to be like a more capable and robust OS on top of rather constrained computers. In my experience it's trivial to shell or port out to the environment when I want to, and I also see people that I don't think of as highly skilled low-level programmers do things with NIF:s so that can't be exceptionally demanding either.

replies(1): >>45313038 #
7. conradfr ◴[] No.45313038[source]
Yes it's definitely not heavy like a Java program that will cannibalize your RAM.

It's actually quite lean.

It will use all your cores without you asking (which is fantastic right?) but it's configurable AFAIK.