Category:Programming paradigm/Tacit: Difference between revisions

From Rosetta Code
Content added Content deleted
(Copy content from non-category page)
 
imported>MaD70
(Added an example)
 
(3 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{stub}}{{feature|Programming paradigm}}
{{stub}}{{feature|Programming paradigm}}
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.
Tacit programming is programming where the arguments are state-free and are not explicitly referenced.


=== Example ===
See also: http://www.jsoftware.com/jwiki/Essays/Tacit%20Expressions
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

Latest revision as of 13:13, 3 January 2024

This page is a stub. It needs more information! You can help Rosetta Code by filling it in!
Programming paradigm/Tacit is a programming language feature.

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

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 (), Insert (/), and ApplyToAll (α) are functional forms that combine existing functions to form new ones. Thus f∘g is the function obtained by applying first g and then f, and αf is the function obtained by applying f to every member of the argument.

See also

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

Subcategories

This category has the following 4 subcategories, out of 4 total.

B

  • BQN(1 C, 272 P)

J

  • J(3 C, 1,413 P)
  • Jq(2 C, 1,138 P)

L