User:NAVYAPONNU20

The term was in use as early as 1998 for STL,[1] as this was one of the first libraries that extensively used templates. The term concept (and its popularization) is credited to Alexander Stepanov,[2][3] the primary designer of the STL.

In the C++ 1998 standard, the Concept term was introduced to name just a simple description of the requirements for particular type, usually being a template parameter. It was not encoded in the language explicitly – the concept was expressed only by what operations are attempted on objects of that type and what is expected to work (that is, to compile correctly). There was a proposal to add concepts as an explicit language feature in C++11, though it was rejected as "not ready". C++20 eventually accepted the refined design of concept.