Langimage
English

functor

|fun-ctor|

C2

🇺🇸

/ˈfʌŋktər/

🇬🇧

/ˈfʌŋktə/

structure-preserving mapping / function-like entity

Etymology
Etymology Information

'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'.

Historical Evolution

'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.

Meaning Changes

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

mappable typemap-able type

Noun 3

in general programming (e.g., C++), a function object — an object that can be invoked like a function because it implements a call operator.

In C++, a functor is an object that implements operator() so it can be called like a function.

Synonyms

Last updated: 2025/12/24 02:25