functor
|fun-ctor|
🇺🇸
/ˈfʌŋktər/
🇬🇧
/ˈfʌŋktə/
structure-preserving mapping / function-like entity
Etymology
'functor' originates from English, formed from the word 'function' with the agentive suffix '-or'; 'function' ultimately comes from Latin 'functio', where the root 'fungi' meant 'to perform, to execute'.
'functor' was coined in English in the 20th century (notably used in category theory by Eilenberg and Mac Lane) by adapting 'function' + '-or'. 'Function' itself passed from Latin 'functio' through Old French/Middle English into modern English, and the new form 'functor' was created to name an entity that acts like or relates to a function.
Initially the root conveyed 'performance' or 'doing'; over time the derived English form 'functor' came to mean a technical object that 'acts like' or 'implements' a function — specifically a structure-preserving mapping in mathematics or an object/type that can be applied like a function in programming.
Meanings by Part of Speech
Noun 1
in category theory, a mapping between categories that sends objects to objects and morphisms to morphisms while preserving identities and composition.
In category theory, a functor maps objects and morphisms from one category to another while preserving composition.
Synonyms
Noun 2
in functional programming (especially Haskell), a type class (or type) that supports a mapping operation (fmap), allowing a function to be applied over values inside the type.
In Haskell, a Functor defines the fmap operation so you can apply a function over wrapped values.
Synonyms
Last updated: 2025/12/24 02:25
