Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Applicative programming language
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{More citations needed|date=April 2020}} {{Distinguish|text=[[applicative functor|applicative functors]], introduced in the paper "Applicative programming with effects"<ref>{{Cite journal|last1=McBride|first1=Conor|last2=Paterson|first2=Ross|date=2008-01-01|title=Applicative programming with effects|journal=Journal of Functional Programming|volume=18|issue=1|pages=1β13|doi=10.1017/S0956796807006326|doi-broken-date=2024-11-20 |issn=1469-7653|citeseerx=10.1.1.114.1555}}</ref>}} In the [[programming paradigm|classification of programming languages]], an '''applicative programming language''' is built out of [[Function (computer science)|functions]] applied to [[Argument (computer science)|arguments]]. Applicative languages are [[Functional programming|functional]], and applicative is often used as a synonym for functional.<ref>{{cite conference|title=Logic Programming cum Applicative Programming|first1=Nachum|last1=Dershowitz|first2=David A.|last2=Plaisted|year=1985|book-title=Symposium on Logic Programming|place=Boston, MA|pages=54β66|citeseerx=10.1.1.404.3826}}</ref> However, [[concatenative languages]] can be functional, while not being applicative.<ref>{{cite web|url=https://evincarofautumn.blogspot.com/2012/02/why-concatenative-programming-matters.html|title=Why Concatenative Programming Matters|author=Jon Purdy|date=12 February 2012|access-date=28 April 2020}}</ref> The [[Semantics (computer science)|semantics]] of applicative languages are based on [[beta reduction]] of terms, and [[Side effect (computer science)|Side effect]] such as mutation of [[State (computer science)|state]] are not permitted.<ref name="Backus 1977">{{Cite journal | doi = 10.1145/359576.359579| title = Can programming be liberated from the von Neumann style?: A functional style and its algebra of programs| journal = Communications of the ACM| volume = 21| issue = 8| pages = 613β641| year = 1978| last1 = Backus | first1 = J. | doi-access = free}}</ref> [[Lisp programming language|Lisp]] and [[ML programming language|ML]] are applicative programming languages. ==See also== * [[Applicative universal grammar]] * [[Function-level programming]] ==References== {{Reflist}} [[Category:Programming language classification]] [[Category:Applicative computing systems]]
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)
Pages transcluded onto the current version of this page
(
help
)
:
Template:Cite conference
(
edit
)
Template:Cite journal
(
edit
)
Template:Cite web
(
edit
)
Template:Distinguish
(
edit
)
Template:More citations needed
(
edit
)
Template:Reflist
(
edit
)