This example uses the map format introduced in Erlang/OTP 18.0.
%% A module implementing a supervisor usually has a name ending with `_sup`.
-module(my_sup).
-behaviour(supervisor).
%% API exports
-export([start_link/0]).
%% Behaviour exports
-export([init/1]).
start_link() ->
...