Remix.run Logo
weatherlight 6 hours ago

The BEAM virtual machine. Its has lightweight isolated processes, message passing, supervisors, hot-ish runtime introspection, and fault containment are not libraries bolted on later. They are the substrate. not an after thought.

if you are build an app that needs the following: + many concurrent users + real-time UI + background jobs + workflows + stateful sessions + distributed events + failure isolation + “this thing should keep running for months”

You're going to want the thing built on the BEAM.

zerr 6 hours ago | parent [-]

But it doesn't have neither AOT nor JIT.

arcanemachiner 6 hours ago | parent | next [-]

I believe BEAM bytecode is now JIT-ed.

EDIT: It is, since OTP 24 was released in 2021:

https://www.erlang.org/downloads/24

> The BeamAsm JIT-compiler has been added to Erlang/OTP and will give a significant performance boost for many applications. The JIT-compiler is enabled by default on most x86 64-bit platforms that have a C++ compiler that can compile C++17.

foxes 6 hours ago | parent | prev | next [-]

elixir/erlang gets compiled into beam byte code. It's a vm. why does this matter..

zerr 5 hours ago | parent [-]

It's an interpreted byte code run (interpreted) by BEAM. Not a native binary run by CPU.

But apparently BeamAsm JIT solves the issue? As mentioned in the sibling comment.

conradfr 6 hours ago | parent | prev [-]

What about https://www.erlang.org/doc/apps/erts/beamasm.html