[erlang-questions] eep: multiple patterns
Ulf Wiger (TN/EAB)
Thu May 29 08:44:12 CEST 2008
Richard A. O'Keefe skrev:
> On 28 May 2008, at 7:41 pm, Ulf Wiger (TN/EAB) wrote:
>> I would just like to point out, for the record, that
>> this style of programming works well for gen_server-style
>> processes (and is, in fact, used in e.g. gen_server.erl),
>> but for selective receive, it is much harder, since
>> selective receive relies entirely on pattern matching,
>> and as such, is very difficult to modularize.
> It's not completely clear to me what Ulf Wiger means by
> "this style of programming". Using "this style of
> programming" to mean "the decision table pattern",
> it works perfectly fine for selective receive.
Apologies for being unclear.
It seemed to me as if the thread was approaching
the idea of
receive Msg ->
case classify_msg(Msg) of
Type -> Action
which is what I was referring to.
It is not surprising that the OTP behaviours gen_server
and gen_fsm both use FIFO message reception, and then
classify each message, sometimes using a callback.
Maybe it's another thread altogether, but, I was
under the impression that abstract patterns could
actually help this situation (too) somewhat.
My own impression is that this is a more pressing
problem to solve than making multiple patterns more
convenient. If the discussions are orthogonal, great,
but otherwise, I'd like to see this particular
problem considered as well.
More information about the erlang-questions