Quick link to creating custom Erlang behaviours
One of the things I liked about Python when I learnt it back then, was
how it exposed what it was doing under the hood in a simple way.
For instance, passing self as the first argument of class methods made
lots of sense coming from an Abstract Data Type use case with C
I could immedietly see the relationship.
Anyway, some parts of Erlang are like that too... and trust me... its
a really really small and concise language (too concise? :)),
anyways... if you've
ever tried to do any sort of Frameworky thingy in an OOP language,
you've had to use Interfaces or something similar (hopefully you've
done this right? and not left
your users to figure out at [compile | run] time why things are
borking sooooo badly).
Anyways... since Erlang has no classes and there are nothing like
Interfaces, they implement a very nice feature called Behaviours which
do some thing similar to Interfaces. At least, tthat's the
simplest way to think about Erlang Behaviours.
Here's a quick link showing how to create yours... short and straight
to the point: http://www.trapexit.org/Defining_Your_Own_Behaviour