Category:Cat: Difference between revisions
Created page with '{{language |site=http://www.cat-language.com/ }} Cat is a functional stack-based programming language inspired by the [Joy] programming language. Cat provides a static type syste…' |
https://concatenative.org/wiki/view/Cat |
||
(One intermediate revision by one other user not shown) | |||
Line 2: | Line 2: | ||
|site=http://www.cat-language.com/ |
|site=http://www.cat-language.com/ |
||
}} |
}} |
||
Cat is a functional stack-based programming language inspired by the [Joy] programming language. Cat provides a static type system with type inferencing (like [ML] or [Haskell]), and a term rewriting macro language extension language called MetaCat. Cat uses static typing, and is somewhat less flexibility but safer than Joy. |
Cat is a functional stack-based programming language inspired by the [[Joy]] programming language. Cat provides a static type system with type inferencing (like [[ML]] or [[Haskell]]), and a term rewriting macro language extension language called MetaCat. Cat uses static typing, and is somewhat less flexibility but safer than Joy. |
||
All constructs in Cat (atomic programs, user defined programs, operators, literals, lists) behave as functions which takes a single stack as input and returns a new stack. In Cat the concatenation of two functions (e.g. [f g]) has the effect of composition of both functions (e.g. g(f(x))). All new user defined functions are defined as lists of functions. Cat not only has no variable declaration, there are no argument declarations. Cat also lends itself to the higher order functional programming: the lambda operation in Cat is the list construction operator "[...]" and currying can be achieved used basic operations such as "cons". |
All constructs in Cat (atomic programs, user defined programs, operators, literals, lists) behave as functions which takes a single stack as input and returns a new stack. In Cat the concatenation of two functions (e.g. [f g]) has the effect of composition of both functions (e.g. g(f(x))). All new user defined functions are defined as lists of functions. Cat not only has no variable declaration, there are no argument declarations. Cat also lends itself to the higher order functional programming: the lambda operation in Cat is the list construction operator "[...]" and currying can be achieved used basic operations such as "cons". |
||
Line 8: | Line 8: | ||
==See Also== |
==See Also== |
||
[[wp:Cat_(programming_language)|Cat (programming language)]] |
[[wp:Cat_(programming_language)|Cat (programming language)]] |
||
{{language programming paradigm|concatenative}} |
Latest revision as of 18:26, 11 March 2023
![Language](http://static.miraheze.org/rosettacodewiki/thumb/2/27/Rcode-button-language-crushed.png/64px-Rcode-button-language-crushed.png)
This programming language may be used to instruct a computer to perform a task.
Official website |
---|
See Also: |
|
---|
Cat is a functional stack-based programming language inspired by the Joy programming language. Cat provides a static type system with type inferencing (like ML or Haskell), and a term rewriting macro language extension language called MetaCat. Cat uses static typing, and is somewhat less flexibility but safer than Joy.
All constructs in Cat (atomic programs, user defined programs, operators, literals, lists) behave as functions which takes a single stack as input and returns a new stack. In Cat the concatenation of two functions (e.g. [f g]) has the effect of composition of both functions (e.g. g(f(x))). All new user defined functions are defined as lists of functions. Cat not only has no variable declaration, there are no argument declarations. Cat also lends itself to the higher order functional programming: the lambda operation in Cat is the list construction operator "[...]" and currying can be achieved used basic operations such as "cons".
See Also
Subcategories
This category has the following 3 subcategories, out of 3 total.
@
- Cat examples needing attention (empty)
- Cat Implementations (empty)
- Cat User (1 P)
Pages in category "Cat"
The following 3 pages are in this category, out of 3 total.