Difference between revisions of "Strict programming language"

From Wiki @ Karl Jones dot com
Jump to: navigation, search
(Created page with "A '''strict programming language''' is one in which only strict functions (functions whose parameters must be evaluated completely before they may be called) may be defined by...")
(No difference)

Revision as of 16:41, 1 March 2016

A strict programming language is one in which only strict functions (functions whose parameters must be evaluated completely before they may be called) may be defined by the user.

Prevalence

Nearly all programming languages in common use today are strict. Examples include C#, Java (programming language]] (prior to Java 8), Perl (through version 5), Python, Ruby, Common Lisp, and ML.

Non-strict programming languages

A non-strict programming language allows the user to define non-strict functions, and hence may allow lazy evaluation.

Evaluation strategies

Strict programming languages are often associated with eager evaluation, and non-strict languages with lazy evaluation, but other evaluation strategies are possible in each case.

The terms "eager programming language" and "lazy programming language" are often used as synonyms for "strict programming language" and "non-strict programming language" respectively.

See also

Non-strict programming language

External links