[erlang-questions] light-weight concurrency in C
Serge Aleynikov
saleyn@REDACTED
Tue Jun 19 04:46:03 CEST 2007
A function defines a transition of state S into state S':
f(S) -> S'
Whereas FSM defines an automata that consists of:
a. States
b. Transition conditions (e.g. State A --> Condition X --> State B)
c. Actions performed at a given point in time (e.g. when
entering/exiting states)
FSM visualization tools could be used to generate Erlang code (though I
don't think such code generators currently exist) just like code in
other languages.
There are three approaches mentioned on this list that can be used to
create FSMs: gen_fsm OTP behavior, plain_fsm (found in Jungerl) and
sys_fsm (maintained by Vance Shipley). Each has its own pros and cons,
but if you are interested about reasoning behind each - you can search
this mailing list.
Regards,
Serge
Francis Norton wrote:
> This may be a stupid question from someone who is just starting on the
> tutorial, but what is the difference between Erlang functions and Finite
> State Machines? Could you use FSM visualisation tools to document (or
> write)
> Erlang?
>
> Francis.
>
> On 6/18/07, Serge Aleynikov <saleyn@REDACTED> wrote:
>>
>> This looks like the same approach to concurrency as what's been used in
>> Erlang: http://legacy.imatix.com/html/smt. They use it in their open
>> source high-performance messaging server: http://www.openamq.org.
>>
>> While there's been a comparison between Yaws and Apache, it would be
>> interesting to see one against http://www.xitami.com as it would seem
>> like it could actually outperform Yaws.
>>
>> Serge
>> _______________________________________________
>> erlang-questions mailing list
>> erlang-questions@REDACTED
>> http://www.erlang.org/mailman/listinfo/erlang-questions
>>
>
More information about the erlang-questions
mailing list