Computer Dictionary Online

Medical Dictionary   Law Dictionary   Legal Dictionary   Website Design

0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f  g  h  i  j  k  l  m  n  o  p  q  r  s  t  u  v  w  x  y  z 


lambda abstraction

A term in lambda-calculus denoting a function. A lambda abstraction begins with a lower-case lambda (represented as "" in this document), followed by a variable name (the "bound variable"), a full stop and a lambda expression (the body). The body is taken to extend as far to the right as possible so, for example an expression,

		 x .  y . x+y


is read as

		 x . ( y . x+y).


A nested abstraction such as this is often abbreviated to:

		 x y . x + y


The lambda expression ( v . E) denotes a function which takes an argument and returns the term E with all free occurrences of v replaced by the actual argument. Application is represented by juxtaposition so

		( x . x) 42


represents the identity function applied to the constant 42.

A lambda abstraction in Lisp is written as the symbol lambda, a list of zero or more variable names and a list of zero or more terms, e.g.

		(lambda (x y) (plus x y))


Lambda expressions in Haskell are written as a backslash, "", one or more patterns (e.g. variable names), "->" and an expression, e.g. x -> x.

(1995-01-24)


Contact the Computer Dictionary Online  ::  Link to the Computer Dictionary Online  ::  Disclaimer for Computer Dictionary Online

Computer Dictionary Online
Copyright © 2017