[erlang-questions] shared data areas (was Re: [erlang-questions] OOP in Erlang)

Ulf Wiger <>
Tue Aug 17 15:35:02 CEST 2010

Michael Turner wrote:
> "... in my experience, from complex telephony and multimedia apps, it is 
> in fact pretty common to have thousands of small 'clusters' of state 
> machines, each cluster sharing a whopping big state record and taking 
> turns processing different parts of the control flow."
> But what's behind the decision to structure things that way?

The fact that the signaling carries all information as a single
session, but when you break it apart, there are lots of different
state machines in there. You split them into different processes
in order to avoid interference between state machines. Still,
the signaling protocol forces them all to pack the data into
a single state.

Your proposed alternative seems quite complicated compared to
the (optimization) option of letting the FSMs share a common heap,
but that is from a *very* cursory perusal. I will try to read it
more closely later.

Ulf W
Ulf Wiger
CTO, Erlang Solutions Ltd, formerly Erlang Training & Consulting Ltd

More information about the erlang-questions mailing list