[erlang-questions] How small could an Erlang emulator be?

ok <>
Wed Mar 14 03:16:12 CET 2007

On 14 Mar 2007, at 1:15 pm, David Hopwood wrote:
> The problem with this question, is that to give an informed answer  
> would
> require doing a fair amount of the work of trying to implement such  
> a VM.

Yes, but there are several people on this mailing list who have tried  
to write
Erlang VMs.  I have several times mentioned that there was someone  
actually at
Ericsson (I have visited him in his office) who was trying to develop  
an Erlang
'standard cell' for ASICs, part of which necessarily involved  
designing a new
VM precisely for a tiny environment.

> In the context of this discussion, the best answers you're going to  
> get will
> be guesswork based on people's experience of writing small  
> interpreters for
> other languages on vaguely similar platforms.

Surely there is somebody on this mailing list who KNOWS what happened  
to the
Erlang standard cell project and could at least ask the guy who was  
working on
it to comment?  Bjarne, are you there?  Joe, are you there?  Anyone?

> In any case, if Erlang is the answer, then what is the question? If I
> were trying to target any specific application at such a platform, I
> wouldn't use Erlang.

And this is the question.  Why not?  The only reason you mention is  
unbounded mailbox *model*, but as I found when I looked at the Santa  
problem, for sufficiently small problems (that one was 22 processes  
but highly
regular in structure) it CAN be straightforward in particular cases  
to see that
only bounded mailbox space will be required.  If you want to use  
bounded buffers,
you have to do the SAME kind of analysis to find out how big the  
buffers should be,
so there is no gain whatever from avoiding Erlang.  Oddly enough,  
while working on
that example I felt the ghost of Concurrent Prolog (or more  
accurately, Per Brinch
Hansen's approach to modelling a concurrent system) hovering over my  

More information about the erlang-questions mailing list