-''Strict evaluation''
is an
approach that a ProgrammingLanguage can take
to evaluating expressions. With ''strict evaluation''
the values of sub-expressions are worked out before passing them to operators, the values of parameters are worked out before passing them to functions.

+StrictEvaluation
is the traditional
approach to evaluating expressions in a ProgrammingLanguage
. It means that
the values of sub-expressions are worked out before passing them to operators, and that
the values of parameters are worked out before passing them to functions.

-Strict evaluation
means you can predict the order that expressions will be

-
evaluated in. That makes
other language features like reassignable variables and a conventional I/O system practical.

+This is the norm in imperative programming used in [ProgrammingLanguage]s like [C], [C++] or [Java] and in in "unpure" functional programming used in languages like [ML] and [LISP]. StrictEvaluation
means you can predict the order that expressions will be evaluated in, so
other language features like reassignable variables and a conventional I/O system become
practical.

-If you've used a an ImperativeLanguage like [C]. [C++] or [Java], then this is just what you are used to. It is the norm for imperative languages. [ML] and [Lisp] are [FunctionalLanguage]s with strict evaluation.

Please note that any user can change the contents of pages on this site,
and therefore the Waikato Linux Users Group can offer no assurances that
the information is correct, and the information on this site is not
necessarily the opinion of the Waikato Linux Users Group, or any of its
members. If you have any complaints about the contents of this page,
please do not hesitate to contact the Waikato Linux Users Group, or, click
the Edit button!

Unless otherwise noted, all pages on this site are licensed under the
WlugWikiLicense.