Category:Programming paradigm/Tacit: Difference between revisions

Added an example
imported>MaD70
(Better definition and added another reference)
imported>MaD70
(Added an example)
 
Line 2:
Tacit programming, also called point-free style, is a programming style in which function definitions refer implicitly (i.e. not by name) to arguments (or "points") on which they operate. They compose other functions, among which are combinators that manipulate the arguments.
 
=== Example ===
See also:
From [John Backus] in references, section ''5.2 A Functional Program for Inner Product'':
 
Def Innerproduct ≡ (Insert +)∘(ApplyToAll x)∘Transpose
 
Or, in abbreviated form:
 
Def IP ≡ (/+)∘(αx)∘Trans.
 
Composition (<big>∘</big>), Insert (<big>/</big>), and ApplyToAll (<big>α</big>) are functional forms that combine existing functions to form new ones. Thus <big>f∘g</big> is the function obtained by applying first <big>g</big> and then <big>f</big>, and <big>αf</big> is the function obtained by applying <big>f</big> to every member of the argument.
 
=== See also: ===
* [https://code.jsoftware.com/wiki/Essays/Tacit_Expressions Tacit Expressions] - J Wiki
* [https://aplwiki.com/wiki/Tacit_programming Tacit programming] - APL Wiki
* [https://en.wikipedia.org/wiki/Tacit_programming Tacit programming] - Wikipedia
 
=== References: ===
* John Backus. 1978. ''Can programming be liberated from the von Neumann style? A functional style and its algebra of programs''. Commun. ACM 21, 8 (Aug. 1978), 613–641. https://doi.org/10.1145/359576.359579
* Henry G. Baker. 1994. ''Linear logic and permutation stacks—the Forth shall be first''. SIGARCH Comput. Archit. News 22, 1 (March 1994), 34–43. https://doi.org/10.1145/181993.181999
Anonymous user