Erlang / Erlang Basics Interview questions
What is a behavior in Erlang?
A behavior is a formalized process pattern: OTP defines the generic, reusable parts (the message loop, error handling, standard API), and you supply a callback module that fills in the domain-specific parts. It's conceptually close to an interface plus a template method pattern from OOP.
-module(my_server). -behaviour(gen_server). init(Args) -> {ok, Args}. handle_call(_Req, _From, State) -> {reply, ok, State}.
The -behaviour(gen_server) attribute tells the compiler which callbacks your module must
export, and it will warn you at compile time if one is missing. The built-in behaviors are
gen_server, gen_statem, gen_event, and supervisor, though
you can also define custom behaviors for your own reusable patterns.
More Related questions...