Qualification Principle
From Wikipedia, the free encyclopedia
The qualification principle states that any semantically meaningful syntactic class may admit local definitions. In other words, it's possible to include a block in any syntactic class, provided that the phrases of that class specify some kind of computation.(Watt, 1990)
A common examples for of this principle includes:
- block command -- a command containing a local declaration, which is used only for executing this command. In the following excerpt from a C program,
tmpvariable declarared local to surrounding block command:
if (a > b) { int tmp; tmp = a; a = b; b = tmp; }
- block expression -- an expression containing a local declaration, which is used only for evaluating this expression. In the following excerpt from ML program, local declaration of
gcan be used only during evaluation of the following expression:
let val g = 9.8 in m * g * h end
[edit] References
- Watt, David A. [5 1990]. "Bindings", Programming Language Concepts and Paradigms. Prentice Hall, pp. 82-83. ISBN 0-13-728874-3.

