Fundamental Concepts In Programming Languages
   HOME
*





Fundamental Concepts In Programming Languages
''Fundamental Concepts in Programming Languages'' were an influential set of lecture notes written by Christopher Strachey for the International Summer School in Computer Programming at Copenhagen in August, 1967. It introduced much programming language terminology still in use today, including " R-value" and " L-value", "ad hoc polymorphism", "parametric polymorphism", and "referential transparency". The lecture notes were reprinted in 2000 in a special issue of ''Higher-Order and Symbolic Computation'' in memory of Strachey. Bibliography * * See also * CPL (programming language) References External links Higher-Order and Symbolic ComputationVolume 13, Issue 1/2 (April 2000) ''Special Issue in memory of Christopher Strachey'' Fundamental Concepts In Programming Languagesat the Portland Pattern Repository Fundamental Concepts In Programming Languagesat the College of Information Sciences and Technology at Pennsylvania State University The Pennsylvania State Uni ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Lecture Notes
A lecture (from Latin ''lēctūra'' “reading” ) is an oral presentation intended to present information or teach people about a particular subject, for example by a university or college teacher. Lectures are used to convey critical information, history, background, theories, and equations. A politician's speech, a minister's sermon, or even a business person's sales presentation may be similar in form to a lecture. Usually the lecturer will stand at the front of the room and recite information relevant to the lecture's content. Though lectures are much criticised as a teaching method, universities have not yet found practical alternative teaching methods for the large majority of their courses. Critics point out that lecturing is mainly a one-way method of communication that does not involve significant audience participation but relies upon passive learning. Therefore, lecturing is often contrasted to active learning. Lectures delivered by talented speakers can be high ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Christopher Strachey
Christopher S. Strachey (; 16 November 1916 – 18 May 1975) was a British computer scientist. He was one of the founders of denotational semantics, and a pioneer in programming language design and computer time-sharing.F. J. Corbató, et al., The Compatible Time-Sharing System A Programmer's Guide' (MIT Press, 1963) . "the first paper on time-shared computers by C. Strachey at the June 1959 UNESCO Information Processing conference" He has also been credited as possibly being the first developer of a video game. He was a member of the Strachey family, prominent in government, arts, administration, and academia. Early life and education Christopher Strachey was born on 16 November 1916 to Oliver Strachey and Rachel (Ray) Costelloe in Hampstead, England. Oliver Strachey was the son of Richard Strachey and the great grandson of Sir Henry Strachey, 1st Baronet. His elder sister was the writer Barbara Strachey. In 1919, the family moved to 51 Gordon Square. The Stracheys belonge ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Value (computer Science)
In computer science and software programming, a value is the representation of some entity that can be manipulated by a program. The members of a type are the values of that type. The "value of a variable" is given by the corresponding mapping in the environment. In languages with assignable variables, it becomes necessary to distinguish between the ''r-value'' (or contents) and the ''l-value'' (or location) of a variable. In declarative (high-level) languages, values have to be referentially transparent. This means that the resulting value is independent of the location of the expression needed to compute the value. Only the contents of the location (the bits, whether they are 1 or 0) and their interpretation are significant. Value category Despite its name, in the C++ language standards this terminology is used to categorize expressions, not values. Assignment: l-values and r-values Some languages use the idea of l-values and r-values, deriving from the typical mode o ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Ad Hoc Polymorphism
In programming languages, ad hoc polymorphismC. StracheyFundamental concepts in programming languages Lecture notes for International Summer School in Computer Programming, Copenhagen, August 1967 is a kind of polymorphism in which polymorphic functions can be applied to arguments of different types, because a polymorphic function can denote a number of distinct and potentially heterogeneous implementations depending on the type of argument(s) to which it is applied. When applied to object-oriented or procedural concepts, it is also known as function overloading or operator overloading. The term ad hoc in this context is not intended to be pejorative; it refers simply to the fact that this type of polymorphism is not a fundamental feature of the type system. This is in contrast to parametric polymorphism, in which polymorphic functions are written without mention of any specific type, and can thus apply a single abstract implementation to any number of types in a transparent way. T ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Parametric Polymorphism
In programming languages and type theory, parametric polymorphism allows a single piece of code to be given a "generic" type, using variables in place of actual types, and then instantiated with particular types as needed. Parametrically polymorphic functions and data types are sometimes called generic functions and generic datatypes, respectively, and they form the basis of generic programming. Parametric polymorphism may be contrasted with ad hoc polymorphism. Parametrically polymorphic definitions are ''uniform'': they behave identically regardless of the type they are instantiated at. In contrast, ad hoc polymorphic definitions are given a distinct definition for each type. Thus, ad hoc polymorphism can generally only support a limited number of such distinct types, since a separate implementation has to be provided for each type. Basic definition It is possible to write functions that do not depend on the types of their arguments. For example, the identity function \math ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  




Referential Transparency
In computer science, referential transparency and referential opacity are properties of parts of computer programs. An expression is called ''referentially transparent'' if it can be replaced with its corresponding value (and vice-versa) without changing the program's behavior. This requires that the expression be pure – its value must be the same for the same inputs and its evaluation must have no side effects. An expression that is not referentially transparent is called referentially opaque. In mathematics, all function applications are referentially transparent, by the definition of what constitutes a mathematical function. However, this is not always the case in programming, where the terms ''procedure'' and ''method'' are used to avoid misleading connotations. A defining characteristic of functional programming is that it only allows referentially transparent functions. Other programming languages may provide means to selectively guarantee referential transparency. Som ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Higher-Order And Symbolic Computation
''Higher-Order and Symbolic Computation'' (formerly ''LISP and Symbolic Computation''; print: , online: ) was a computer science journal published by Springer Science+Business Media. It focuses on programming concepts and abstractions and programming language theory. The final issue appeared in 2013. Editors Former editors-in-chief of the journal have been: * Richard P. Gabriel, Sun Microsystems, Inc., USA (1988 – 1991) * Guy L. Steele Jr., Sun Microsystems, Inc., USA (1988 – 1991) * Robert R. Kessler, University of Utah, USA (1991 – 1998) The last editors-in-chief were Olivier Danvy ( Aarhus University) and Carolyn Talcott (SRI International). Abstracting and indexing The journal is abstracted and indexed in Academic OneFile, ACM Computing Reviews, ACM Digital Library, Computer Abstracts International Database, Computer Science Index, Current Abstracts, EBSCO, EI-Compendex, INSPEC, io-port.net, PASCAL, Scopus, Summon by Serial Solutions, VINITI Dat ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


CPL (programming Language)
CPL or Cpl may refer to: Organizations * CPFL Energia (NYSE: CPL), the largest non state-owned group of electric energy generation and distribution in Brazil * CPL Aromas, a British fragrance company formerly known as Contemporary Perfumers Limited * CPL Resources, a resourcing/placement company based in Dublin Libraries * Chicago Public Library, the public library system that serves the city of Chicago, Illinois, US * Cleveland Public Library, the public library system that serves the city of Cleveland, Ohio, US *Calgary Public Library, the public library system that serves the city of Calgary, Alberta, Canada * Coquitlam Public Library, a public library that serves Coquitlam, British Columbia, Canada * Codices Palatini latini, the Latin section of the medieval manuscript collection in the Bibliotheca Palatina in Heidelberg. Sports * Canadian Premier League, a men's professional soccer league sanctioned by the Canada Soccer which represents the sport's highest level in Canada * ...
[...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]  


picture info

Pennsylvania State University
The Pennsylvania State University (Penn State or PSU) is a Public university, public Commonwealth System of Higher Education, state-related Land-grant university, land-grant research university with campuses and facilities throughout Pennsylvania. Founded in 1855 as the Farmers' High School of Pennsylvania, Penn State became the state's only Land-grant university, land-grant university in 1863. Today, Penn State is a major research university which conducts teaching, research, and public service. Its instructional mission includes undergraduate, graduate, professional and continuing education offered through resident instruction and online delivery. The University Park campus has been labeled one of the "Public Ivy, Public Ivies", a publicly funded university considered as providing a quality of education comparable to those of the Ivy League. In addition to its land-grant designation, it also participates in the sea-grant, space-grant, and sun-grant research consortia; it is on ...
[...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]  


picture info

1967 In Computing
Events January * January 1 – Canada begins a year-long celebration of the 100th anniversary of Canadian Confederation, Confederation, featuring the Expo 67 World's Fair. * January 5 ** Spain and Romania sign an agreement in Paris, establishing full consular and commercial relations (not diplomatic ones). ** Charlie Chaplin launches his last film, ''A Countess from Hong Kong'', in the UK. * January 6 – Vietnam War: United States Marine Corps, USMC and Army of the Republic of Vietnam, ARVN troops launch ''Operation Deckhouse Five'' in the Mekong Delta. * January 8 – Vietnam War: Operation Cedar Falls starts. * January 13 – A military coup occurs in Togo under the leadership of Étienne Eyadema. * January 14 – The Human Be-In takes place in Golden Gate Park, San Francisco; the event sets the stage for the Summer of Love. * January 15 ** Louis Leakey announces the discovery of pre-human fossils in Kenya; he names the species ''Proconsul nyanzae, Kenyapithecus africanus ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]