A Joeish Erlang distribution (long)

Klacke <>
Wed Jan 29 11:18:36 CET 2003

> You would not divide the processes into behaviors? 


> You would not place 
> your behaviors in supervision trees? 


> You would not encapsulate your 
> supervision trees in applications? 


> You would not glue together your 
> applications and start them using a boot file? 


> If you use the generic 
> behaviors or not, that is another story The OTP design principles are 
> something beginners *should* start doing as soon as they are confident 
> with Erlang, as it is the natural step towards writing their own.

Sorry, don't agree.

> If you prefer to avoid the systools, 


> or implement your own application 
> controller as the existing one lacks many features, fine. If you stay 
> away from the release handler, 


> you are not alone (I avoid it myself 
> whenever possible). And if you use your own error logging mechanism, 
> that makes two of us. But I have a hard time following how you can not 
> build a large coherent system without using the theory behind the 
> Erlang/OTP design principles as it is described in the documentation 
> manuals or in the OTP course material we have been using on thousands of 
> people for almost 8 years. I would be very careful to recommending 
> people evaluating Erlang or building their first product to bypass the 
> principles, as that is what makes Erlang even more powerful than what it 
> already is.
> > Not me anyway, I don't like them (because I don't understand them)
> I am sure we can invite you when we give a course near you ;-)


I'll tell you what I use. I use the gen_servers. I have never used any
of the other gen_ modules   (except gen_tcp of cource ... but that
is an entirely different beast, then gen_ in gen_tcp only has the
name in common with gen_fsm and gen_event)

I actually do use applications. Not that I like them but if I want to
write an erlang program that fits into the otp tree I must do that.

I've never used the release handler, I barely understand the 
error_logger. Everytime I need to do something with the error_logger such
a duplicating error_messages to go to yet another place I have to look 
deep and hard at the code again.

I've never had a supervision tree deeper than 1.


Claes Wikstrom                        -- Caps lock is nowhere and
Alteon WebSystems                     -- everything is under control          
cellphone: +46 70 2097763

More information about the erlang-questions mailing list