defining behaviours (Re: Design Patterns for Erlang)
Mickael Remond
mickael.remond@REDACTED
Thu Feb 15 22:57:48 CET 2001
On Thu, 15 Feb 2001, Ulf Wiger wrote:
> On Thu, 15 Feb 2001, Richard Carlsson wrote:
>
>>There is a recent Master's thesis about design patterns and Erlang:
>>
>> ftp://ftp.csd.uu.se/pub/papers/masters-theses/0178-ekstrom.pdf
>>
>>
>> /Richard Carlsson
>
> Good thesis (I've just browsed it.)
I agree with you. Very interesting indeed.
> I'm currently looking at how behaviours are defined.
> Personally, I don't like the idea of poking into otp_internal.erl
> in order to define a new behaviour. In practice, this means that
> users of OTP can't define their own patterns.
Again I agree. That was one of the first thing that stroke me when reading
this text.
> I would like to propose the following:
>
> - The otp_internal:behaviours() function is simply scrapped.
> If a module defines a compiler directive -behaviour(B), then
> B should correspond to the name of the module implementing the
> behaviour.
>
> - In each behaviour, export a function B:behaviour_info(Category),
> for example like this:
You seem to be right. Maybe the OTP people could enlight us on this point, but
it seems to be a good idea.
> (As some of you know, we at AXD 301 also specify our permanent
> processes in the .app file, and let a central start function take
> care of building the supervision hierarchy. The reason for this is
> to make the process structure more visible.)
Making OTP in general more visible is a good thing. OTP is really improving
your application design, especially thanks to behaviour and should be
advertised.
> A still open issue is whether behaviours which do _not_ want a
> process should also be allowed? Actually, we have one already:
> application. How would they be defined? Is there a need for
> additional rules?
Or, maybe we could extend the question ?
Does the application need to be a behaviour or should it be something else ?
Really, I have no answer yet.
--
Mickaël Rémond tel : (33)1.44.42.00.00
Project Manager mob : (33)6.60.22.22.16
15 - 17 avenue de Ségur e-mail : mickael.remond@REDACTED
75007 - Paris web : http://IDEALX.com
More information about the erlang-questions
mailing list