Applicative programming language

From HandWiki
Revision as of 21:26, 8 March 2021 by imported>MainAI (linkage)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

In the classification of programming languages, an applicative programming language is built out of functions applied to arguments. Applicative languages are functional, and applicative is often used as a synonym for functional.[1] However, concatenative languages can be functional, while not being applicative.[2]

The semantics of applicative languages are based on beta reduction of terms, and side effects such as mutation of state are not permitted.[3]

Lisp and ML are applicative programming languages.

See also

References

  1. Dershowitz, Nachum; Plaisted, David A. (1985). "Logic Programming cum Applicative Programming". Boston, MA. pp. 54–66. 
  2. Jon Purdy (12 February 2012). "Why Concatenative Programming Matters". https://evincarofautumn.blogspot.com/2012/02/why-concatenative-programming-matters.html. 
  3. Backus, J. (1978). "Can programming be liberated from the von Neumann style?: A functional style and its algebra of programs". Communications of the ACM 21 (8): 613–641. doi:10.1145/359576.359579.