What does functor mean?
A functor is a technical term from mathematics and computer science denoting something that behaves like a function but occupies a more structured role. In category theory, a functor is a mapping between categories that preserves their essential structure — it sends objects to objects and arrows to arrows while respecting composition and identity. In computer science, particularly in C++ and functional languages such as Haskell, the term has two related uses: a "functor" may mean an object that can be called as though it were a function (as in C++ classes that overload operator()), or it may denote a type that can be mapped over by applying a function to its contents. Though rooted in formal theory, the word appears frequently in everyday programming discourse, where it signals abstraction and disciplined design. For readers outside these fields, "functor" is best understood simply as a function-like entity embedded in a larger framework.
In mathematics, a structure-preserving mapping between categories; in computer science, a function-like object or a type that can be mapped over.
"Every monad is also a functor equipped with additional structure."
Primarily a specialist term in category theory and functional programming.
More generally, anything that performs or serves a particular function or operation.
"In Carnap's logic, a functor is an expression that designates a function."
This broader philosophical/logical sense is now largely historical.
Regular plural form; standard in both mathematical and computing literature.
"The paper compares several functors defined between the two categories."
Reviewed by Deb Chak, Editor. AI-assisted content curated by RJS Tech Solutions LLP.
Etymology of functor
Functor derives ultimately from the Latin verb fungi (past participle functus), meaning "to perform" or "to discharge," the same root that gives us function and functional. The word was introduced into English in its modern sense in the 20th century: mathematician Rudolf Carnap used "functor" in his logical writings of the 1930s, and category theorists later adopted it to name the structure-preserving maps between categories. Its use spread into computer science as functional programming grew, retaining the core idea of something that acts like a function.
How functor is actually used
"Functor" is a technical term used almost exclusively in mathematics, computer science, and programming contexts; in ordinary conversation it is rarely encountered. In functional-programming circles it carries connotations of abstraction and category-theoretic rigor. The word should not be used loosely for any function.
Easily confused with functor
A function is a general mathematical rule mapping inputs to outputs, while a functor is the more specialized term for something that operates like a function within category theory or functional programming.