F-bounded Polymorphism
   HOME





F-bounded Polymorphism
In type theory, bounded quantification (also bounded polymorphism or constrained genericity) refers to universal or existential quantifiers which are restricted ("bounded") to range only over the subtypes of a particular type. Bounded quantification is an interaction of parametric polymorphism with subtyping. Bounded quantification has traditionally been studied in the functional setting of System F<:, but is available in modern s supporting ( generics) such as

Type Theory
In mathematics and theoretical computer science, a type theory is the formal presentation of a specific type system. Type theory is the academic study of type systems. Some type theories serve as alternatives to set theory as a foundation of mathematics. Two influential type theories that have been proposed as foundations are: * Typed λ-calculus of Alonzo Church * Intuitionistic type theory of Per Martin-Löf Most computerized proof-writing systems use a type theory for their foundation. A common one is Thierry Coquand's Calculus of Inductive Constructions. History Type theory was created to avoid paradoxes in naive set theory and formal logic, such as Russell's paradox which demonstrates that, without proper axioms, it is possible to define the set of all sets that are not members of themselves; this set both contains itself and does not contain itself. Between 1902 and 1908, Bertrand Russell proposed various solutions to this problem. By 1908, Russell arrive ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Curiously Recurring Template Pattern
The curiously recurring template pattern (CRTP) is an idiom, originally in C++, in which a class X derives from a class template instantiation using X itself as a template argument. More generally it is known as F-bound polymorphism, and it is a form of ''F''-bounded quantification. History The technique was formalized in 1989 as "''F''-bounded quantification." The name "CRTP" was independently coined by Jim Coplien in 1995, who had observed it in some of the earliest C++ template code as well as in code examples that Timothy Budd created in his multiparadigm language Leda. It is sometimes called "Upside-Down Inheritance" due to the way it allows class hierarchies to be extended by substituting different base classes. The Microsoft Implementation of CRTP in Active Template Library (ATL) was independently discovered, also in 1995, by Jan Falkin, who accidentally derived a base class from a derived class. Christian Beaumont first saw Falkin's code and initially thought it coul ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Portland Pattern Repository
The Portland Pattern Repository (PPR) is an online repository for computer programming software design patterns. It was accompanied by the website WikiWikiWeb, the world's first wiki. The repository has an emphasis on extreme programming, and is hosted by Cunningham & Cunningham (C2) of Portland, Oregon. The PPR's motto is "People, Projects & Patterns". History On 17 September 1987, programmer Ward Cunningham with Tektronix and Apple Computer's Kent Beck co-published the paper "Using Pattern Languages for Object-Oriented Programs" This paper, about software design patterns, was inspired by Christopher Alexander's architectural concept of "patterns" It was written for the 1987 OOPSLA programming conference organized by the Association for Computing Machinery. Cunningham and Beck's idea became popular among programmers because it helped them exchange programming ideas in an easy to understand format. Cunningham & Cunningham, the programming consultancy that would eventually ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Don Syme
Don Syme is an Australian computer scientist and a Principal Researcher at Microsoft Research, Cambridge, U.K. He is the designer and architect of the F Sharp (programming language), F# programming language, described by a reporter as being regarded as "the most original new face in computer languages since Bjarne Stroustrup developed C++ in the early 1980s."Syme, Don"Interview with Don Syme" ''Simple Talk'', 19 January 2010. Earlier, Syme created Generic programming#Generic programming in C.23 and .NET, generics in the .NET Common Language Runtime, including the initial design of generics for the C Sharp (programming language), C# programming language, along with others including Andrew Kennedy and later Anders Hejlsberg. Kennedy, Syme and Dachuan Yu also formalized this widely used system. He holds a Ph.D. from the University of Cambridge, and is a member of the International_Federation_for_Information_Processing, IFIP working group on functional programming. He is a co-auth ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  



MORE