From Rosetta Code
Revision as of 18:26, 11 March 2023 by Querfeld (talk | contribs) (
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
This programming language may be used to instruct a computer to perform a task.
Official website
See Also:

Listed below are all of the tasks on Rosetta Code which have been solved using Cat.

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

Cat (programming language)


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

Pages in category "Cat"

The following 3 pages are in this category, out of 3 total.