Generic programming
Way of designing and writing programs where algorithms are written in terms of parametric types enabling easy reuse
Generic programming is a style of computer programming in which algorithms are written in terms of data types to-be-specified-later that are then instantiated when needed for specific types provided as parameters. This approach, pioneered in the programming language ML in 1973, permits writing common functions or data types that differ only in the set of types on which they operate when used, thus reducing duplicate code.
Nº Q1051282 ★★
Uncommon · Knowledge
Generic programming
Way of designing and writing programs where algorithms are written in terms of parametric types enabling easy reuse
Generic programming is a style of computer programming in which algorithms are written in terms of data types to-be-specified-later that are then instantiated when needed for specific types provided as parameters. This approach, pioneered in the programming language ML in 1973, permits writing common functions or data types that differ only in the set of types on which they operate when used, thus reducing duplicate code.
From Wikipedia
Generic programming is a style of computer programming in which algorithms are written in terms of data types to-be-specified-later that are then instantiated when needed for specific types provided as parameters. This approach, pioneered in the programming language ML in 1973, permits writing common functions or data types that differ only in the set of types on which they operate when used, thus reducing duplicate code. Generic programming was introduced to the mainstream with Ada in 1977. With templates in C++, generic programming became part of the repertoire of professional library design. The techniques were further improved and parameterized types were introduced in the influential 1994 book Design Patterns. New techniques were introduced by Andrei Alexandrescu in his 2001 book Modern C++ Design: Generic Programming and Design Patterns Applied. Subsequently, D implemented the same ideas. Such software entities are known as generics in Ada, C#, Dart, Delphi, Eiffel, F#, Java, Mojo, Nim, Python, Go, Rust, Swift, TypeScript, and Visual Basic (.NET). They are known as parametric polymorphism in ML, Scala, Julia, and Haskell. (Haskell terminology also uses the term generic for a related but somewhat different concept.) The term generic programming was originally coined by David Musser and Alexander Stepanov in a more specific sense than the above, to describe a programming paradigm in which fundamental requirements on data types are abstracted from across concrete examples of algorithms and data structures and formalized as concepts, with generic functions implemented in terms of these concepts, typically using language genericity mechanisms as described above.
Text: Wikipédia, CC BY-SA 4.0. ·
Related cards
-
Genetic programming
Technique whereby computer programs are encoded as a set of genes
Nº Q629498 ★
Not listed
-
Ada (programming language)
Programming language
Nº Q154755 ★★★
Not listed
-
C
Concurrent computing
Form of computing in which several computations logically execute during overlapping time periods
Nº Q128392 ★★
Not listed
-
G
G-code
Programming languages
Nº Q620464 ★★★
Not listed
-
P
Prototype-based programming
Style of object-oriented programming
Nº Q180868 ★
Not listed
-
Structured programming
Programming paradigm aimed at improving clarity, quality, and development time by using control structures
Nº Q223335 ★★★
Not listed