Statically scoped languages differ as to whether the scope is limited to the smallest block (including begin/end blocks) containing the identifier's declaration (e.g. C, Perl) or to whole function and procedure bodies (e.g. ECMAScript), or some larger unit of code (e.g. ?). The former is known as static nested scope.