Bounded Polymorphism
   HOME
*





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 parametric polymorphism () such as

Type Theory
In mathematics, logic, and computer science, a type theory is the formal system, formal presentation of a specific type system, and in general type theory is the academic study of type systems. Some type theories serve as alternatives to set theory as a Foundations of mathematics, foundation of mathematics. Two influential type theories that were proposed as foundations are Alonzo Church's typed lambda calculus, typed λ-calculus and Per Martin-Löf's intuitionistic type theory. Most proof assistant, computerized proof-writing systems use a type theory for their foundation. A common one is Thierry Coquand's Calculus of constructions, Calculus of Inductive Constructions. History Type theory was created to avoid a paradox in a mathematical foundation based on naive set theory and formal logic. Russell's paradox, which was discovered by Bertrand Russell, existed because a set could be defined using "all possible sets", which included itself. Between 1902 and 1908, Bertrand Russe ...
[...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 Jan's code and initially thought it could no ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Portland Pattern Repository
The Portland Pattern Repository (PPR) is a repository for computer programming software design patterns. It was accompanied by a companion website, WikiWikiWeb, which was the world's first wiki. The repository has an emphasis on Extreme Programming, and it 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, then 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 a format that is easy to understand. Cunningham & Cunningham, the programming consultancy ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  




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# 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 generics in the .NET Common Language Runtime, including the initial design of generics for the 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 WG2.8 working group on functional programming. He is a co-author of the book ''Expert F# 3.0''.Syme, Don et al"Expert F# at Apress" ''Apress'', November 2012. In the past he also worked on formal specification, interactive proof, ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Andrew Kennedy (computer Scientist)
Andrew Kennedy may refer to: * Andrew Kennedy (American politician) (1810–1847), U.S. Representative from Indiana * Andrew Kennedy (basketball) (born 1965), retired American-Jamaican basketball player * Andrew Kennedy (Canadian politician) (1842–1904), contractor and politician from Quebec *Andrew Kennedy, cover name for Andrzej Kowerski (1912–1988), Polish Army officer and SOE agent in World War II * Andrew Kennedy (cricketer, born 1975), English cricketer * Andrew Kennedy (cricketer, born 1949), former English cricketer *Andrew Kennedy (tenor) (born 1977), English tenor * Andrew Karpati Kennedy (1931–2016), author and literary critic See also *Andy Kennedy (other) Andy Kennedy (born 1968) is an American basketball coach. Andy Kennedy may also refer to: * Andy Kennedy (Australian footballer) (1883–1946), Australian rules footballer * Andy Kennedy (footballer, born 1897) (1897–1963), Northern Ireland foot ...
{{hndis, Kennedy, Andrew ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Philip Wadler
Philip Lee Wadler (born April 8, 1956) is an American computer scientist known for his contributions to programming language design and type theory. He is the chair of Theoretical Computer Science at the Laboratory for Foundations of Computer Science at School of Informatics, University of Edinburgh. He has contributed to the theory behind functional programming and the use of monads in functional programming, the design of the purely functional language Haskell, and the XQuery declarative query language. In 1984, he created the Orwell programming language. Wadler was involved in adding generic types to Java 5.0. He is also author of the paper ''Theorems for free!'' that gave rise to much research on functional language optimization (see also Parametricity). Education Wadler received a Bachelor of Science degree in mathematics from Stanford University in 1977, and a Master of Science degree in Computer Science from Carnegie Mellon University in 1979. He completed his Doc ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

David Stoutamire
David (; , "beloved one") (traditional spelling), , ''Dāwūd''; grc-koi, Δαυΐδ, Dauíd; la, Davidus, David; gez , ዳዊት, ''Dawit''; xcl, Դաւիթ, ''Dawitʿ''; cu, Давíдъ, ''Davidŭ''; possibly meaning "beloved one". was, according to the Hebrew Bible, the third king of the United Kingdom of Israel. In the Books of Samuel, he is described as a young shepherd and harpist who gains fame by slaying Goliath, a champion of the Philistines, in southern Canaan. David becomes a favourite of Saul, the first king of Israel; he also forges a notably close friendship with Jonathan, a son of Saul. However, under the paranoia that David is seeking to usurp the throne, Saul attempts to kill David, forcing the latter to go into hiding and effectively operate as a fugitive for several years. After Saul and Jonathan are both killed in battle against the Philistines, a 30-year-old David is anointed king over all of Israel and Judah. Following his rise to power, David co ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Martin Odersky
Martin Odersky (born 5 September 1958) is a German computer scientist and professor of programming methods at École Polytechnique Fédérale de Lausanne (EPFL) in Switzerland. He specializes in code analysis and programming languages. He designed with help from others the Scala programming language and Generic Java (and Pizza before). In 1989, he received his Ph.D. from ETH Zurich under the supervision of Niklaus Wirth, who is best known as the designer of several programming languages, including Pascal. He did postdoctoral work at IBM and Yale University. In 1997, he implemented the GJ compiler, and his implementation became the basis of javac, the Java compiler. In 2002, he and others began working on Scala which had its first public release in 2003. In 2007, he was inducted as a Fellow of the Association for Computing Machinery. On 12 May 2011, Odersky and collaborators launched Typesafe Inc. (renamed Lightbend Inc., ), a company to provide commercial support, t ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  




Gilad Bracha
Gilad Bracha is a software engineer at F5 Networks, and formerly at Google, where he was on the Dart programming language team. He is creator of the Newspeak language, and co-author of the second and third editions of the Java Language Specification, and a major contributor to the second edition of the Java Virtual Machine Specification. Between 1994 and 1997, he worked on the Smalltalk system developed by Animorphic Systems, a company that was bought by Sun in 1997. From 1997 to 2006, he worked at Sun Microsystems as computational theologist and, as of 2005, distinguished engineer, on various aspects of the specification and implementation of Java. Following that, he was distinguished engineer at Cadence Design Systems from 2006 to 2009, where he led a team of developers designing and implementing Newspeak. Bracha received his B.Sc. in mathematics and computer science from Ben Gurion University in Israel and his Ph.D. in computer science from the University of Utah. Bracha won ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Benjamin C
Benjamin ( he, ''Bīnyāmīn''; "Son of (the) right") blue letter bible: https://www.blueletterbible.org/lexicon/h3225/kjv/wlc/0-1/ H3225 - yāmîn - Strong's Hebrew Lexicon (kjv) was the last of the two sons of Jacob and Rachel (Jacob's thirteenth child and twelfth and youngest son) in Jewish, Christian and Islamic tradition. He was also the progenitor of the Israelite Tribe of Benjamin. Unlike Rachel's first son, Joseph, Benjamin was born in Canaan according to biblical narrative. In the Samaritan Pentateuch, Benjamin's name appears as "Binyamēm" (Samaritan Hebrew: , "son of days"). In the Quran, Benjamin is referred to as a righteous young child, who remained with Jacob when the older brothers plotted against Joseph. Later rabbinic traditions name him as one of four ancient Israelites who died without sin, the other three being Chileab, Jesse and Amram. Name The name is first mentioned in letters from King Sîn-kāšid of Uruk (1801–1771 BC), who called himself “King ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


William Olthoff
William is a masculine given name of Norman French origin.Hanks, Hardcastle and Hodges, ''Oxford Dictionary of First Names'', Oxford University Press, 2nd edition, , p. 276. It became very popular in the English language after the Norman conquest of England in 1066,All Things William"Meaning & Origin of the Name"/ref> and remained so throughout the Middle Ages and into the modern era. It is sometimes abbreviated "Wm." Shortened familiar versions in English include Will, Wills, Willy, Willie, Liam, Bill, and Billy. A common Irish form is Liam. Scottish diminutives include Wull, Willie or Wullie (as in Oor Wullie or the play ''Douglas''). Female forms are Willa, Willemina, Wilma and Wilhelmina. Etymology William is related to the German given name ''Wilhelm''. Both ultimately descend from Proto-Germanic ''*Wiljahelmaz'', with a direct cognate also in the Old Norse name ''Vilhjalmr'' and a West Germanic borrowing into Medieval Latin ''Willelmus''. The Proto-Ger ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Walter L
Walter may refer to: People * Walter (name), both a surname and a given name * Little Walter, American blues harmonica player Marion Walter Jacobs (1930–1968) * Gunther (wrestler), Austrian professional wrestler and trainer Walter Hahn (born 1987), who previously wrestled as "Walter" * Walter, standard author abbreviation for Thomas Walter (botanist) ( – 1789) Companies * American Chocolate, later called Walter, an American automobile manufactured from 1902 to 1906 * Walter Energy, a metallurgical coal producer for the global steel industry * Walter Aircraft Engines, Czech manufacturer of aero-engines Films and television * ''Walter'' (1982 film), a British television drama film * Walter Vetrivel, a 1993 Tamil crime drama film * ''Walter'' (2014 film), a British television crime drama * ''Walter'' (2015 film), an American comedy-drama film * ''Walter'' (2020 film), an Indian crime drama film * '' W*A*L*T*E*R'', a 1984 pilot for a spin-off of the TV series ''M*A*S*H ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]