Estelle is an extension of ISO standard Pascal. The extensions are mainly concerned with expressing Finite State Machines and their associated States, Transitions and Events. Modules may be paramaterised. Process type modules are dynamic, and are initialized (created/instatiated) or destroyed as a system runs. A module may have a separate Body and Header, so that we can define a consistent service supported by a module without going into detail of how the service is provided. (E.g. a train or a plane will get you to Edinburgh, but work in a totally different way. They might be parameterised by cost - e.g. the plane is usually cheaper, but not during the festival, and certainly have internal interactions that are different e.g. with the railway tracks provider or runway providers).