BEAM documentation (was Re: Packages in Erlang...)

James Hague <>
Mon Sep 8 00:43:45 CEST 2003


Richard A. O'Keefe wrote:

>(7) JAM was not the last word in Erlang implementations.
>    BEAM will not be the last word in Erlang implementations.
>    "BEAM does so-and-so in such-and-such a manner" may decide what
>    designs are easy to experiment with atop BEAM, but must not be
>    allowed to dictate which designs are considered at all.

That's a good point, and it is worth emphasizing.  Statements to the 
effect of "BEAM doesn't that allow that," while not frequent, have 
come up enough that my attention is drawn to them (see the "Tail 
Recursion" thread for another example.  What worries me is that the 
workings of the BEAM emulator are essentially undocumented--and there 
don't appear to be any plans to document them--which makes the 
emulator much more opaque than it should be, and yet the Erlang 
language is fundamentally reliant on it. Certainly there should be a 
successor to BEAM at some point, one that's not so wrapped up in 
historical decisions, or at least alternative implementations of 
BEAM.  This could be handled by someone outside of Ericsson, were the 
architecture of emulator less of a mystery.

(One idea I've mused about is doing away with the C implementation of 
the BEAM emulator entirely, and writing the core in a custom mid-
level language implemented in Erlang.)




More information about the erlang-questions mailing list