Webster's Online Dictionary
with Multilingual Thesaurus Translation

 
Earth's largest dictionary with more than 1226 modern languages and Eve!

Specialty Expressions: HEAD NORMAL FORM

ExpressionsDomainDefinition
Head normal formComputingHead normal form (HNF) A lambda expression is in head normal form if its top level is either a variable, a data value, a built-in function applied to too few arguments or a lambda abstraction whose body is not reducible.i.e. the top level is neither a redex nor a lambda abstraction with a reducible body. An expression in HNF may contain redexes in argument positions whereas a normal form may not. See also Weak head normal form. Source: The Free On-line Dictionary of Computing..
Weak Head Normal FormComputingWeak Head Normal Form (WHNF) A lambda expression is in weak head normal form (WHNF) if it is a head normal form (HNF) or any lambda abstraction.i.e. the top level is not a redex. The term was coined by Simon Peyton Jones to make explicit the difference between head normal form (HNF) and what graph reduction systems produce in practice. A lambda abstraction with a reducible body, e.g. \ x. ((\ y.y+x) 2) is in WHNF but not HNF. To reduce this expression to HNF would require reduction of the lambda body: (\ y.y+x) 2 --> 2+x Reduction to WHNF avoids the name capture problem with its need for alpha conversion of an inner lambda abstraction and so is preferred in practical graph reduction systems. The same principle is often used in strict languages such as Scheme to provide call-by-name evaluation by wrapping an expression in a lambda abstraction with no arguments: D = delay E = \ (). E The value of the expression is obtained by applying it to the empty argument list: force D = apply D () = apply (\ (). E) () = E (1994-10-31). Source: The Free On-line Dictionary of Computing..

Source: compiled by the editor from various references; see credits.

Top