# Program Structure

A program can be divided into multiple components, which are external declarations that include function definitions and identifier declarations.

_`program`_:\
 _`external-declaration`_

_`external-declaration`_:\
 [_`function-definition`_](functions/function-definitions)\
 [_`declaration`_](declarations-and-types)\
