Topic: referential transparency

topics > philosophy > Group: meaning and truth

expression language
formal methods and languages
functional programming
meaning vs. reference
names as rigid designators
number representation
object and value equivalence
object modification
proper names
reduction languages
restricted and extended types
safe use of pointers
uniform reference to data
value as an abstraction
value as an object
weak vs. strong type checking


With referential transparency, values and expressions are the same. There are no side-effects to executing an expression. The value of an expression is independent of its context. This allows expressions to be reduced to a value. Quine developed the idea. (cbb 1/90)
Subtopic: referential transparency up

Quote: referential transparency means that the value of an expression is determined by the values of its sub-expressions [»straC8_1967]
Quote: referential transparency: value and expression are equivalent in any position [»stoyJ_1977, OK]
Quote: referential transparency: expression can be replaced with another expression of same value [»tennRD8_1976, OK]
Quote: referential transparency--the result of a function is solely dependent on its arguments; a pure functional language [»plasR6_1999]
Quote: in a reduction language can reduce any subexpression without changing its value [»backJ_1972]
Quote: reduce an expression by replacing a subexpression by its value; reduction language
Quote: variables in mathematics are names that do not vary; e.g., x is the same x in 3x^2+2x+17; consequence of referential transparency [»straC8_1967]

Subtopic: syntactic analysis up

Quote: the symbol string 1+5 is not 6 in all circumstances, for example 21+52; requires syntactic analysis

Subtopic: natural language up

Quote: if a language contains intension adverbs (necessarily) then interchanging equivalent predicates can demonstrate cognitive synonymy; analytic already [»quinWV1_1951]
Quote: in an extensional language can interchange equivalent extensional predicates but the agreement may be accidental and not due to meaning

Subtopic: values vs. objects up

Quote: values are referentially transparent while objects are referentially opaque; i.e., values do not have side effects and identical values may be substituted freely [»taivA4_1993]

Subtopic: substitutivity up

Quote: data type abstraction allows one variable to be substituted for another without making the program illegal or meaningless [»parnDL3_1976]
Quote: a term is a name of an entity if identical entities may be substituted; Frege [»quinWV_1950]
Quote: a restricted type matches the base type's structure and may be used everywhere the base type is used [»simeJ1_2003]
Quote: indiscernibility of identicals--identicals may be substituted in any true statement [»quinWV_1947]

Subtopic: recursive understanding up

Quote: understand X+Y by recursively understanding each part independently; manifest structure, clear meaning and purpose
Quote: pidgins are semantically transparent with one form for one meaning; e.g., two words to specify gender of all species [»sebbM_1997]
Quote: a concept is the entity which a predicate means; the meaning of a complex name depends on the meaning, not the sense, of its parts [»dummM_1967]

Subtopic: unique reference up

Quote: CLEAN maintains referential transparency of mutable arguments by guaranteeing unique references; e.g., via a copy
Quote: SafeTSA is compact, type-safe mobile code based on static single assignment; safe by construction with referential integrity, type separation, and type check elimination [»ammeW6_2001]

Subtopic: functional language up

Quote: complete language <=> fixed points of a semantic function are the values of its expressions [»backJ_1973, OK]
Quote: a functional language needs substitutivity of equivalence for mathematical proofs about evaluations
Quote: in FAD, the name for an item expression can always be replaced by its definition [»martJJ_1980]

Subtopic: databases up

Quote: Codd developed relational databases to solve data-maintenance abnormalities due to failures in referential transparency [»cobbRH11_1990]

Subtopic: failure of substitutivity up

Quote: substitutivity fails for Giorgione = Barbarelli in "Giorgione was so-called because of his size"
Quote: the assignment statement undoes referential transparency and identity; how much of mathematics can survive?

Related Topics up

Topic: definition (17 items)
Topic: expression language (14 items)
Topic: formal methods and languages (53 items)
Topic: functional programming (45 items)
Topic: meaning vs. reference (49 items)
Topic: names as rigid designators (43 items)
Topic: number representation (16 items)
Topic: object and value equivalence (60 items)
Topic: object modification (10 items)
Topic: proper names (35 items)
Topic: reduction languages (17 items)
Topic: reductionism (51 items)
Topic: restricted and extended types (35 items)
Topic: safe use of pointers (102 items)
Topic: uniform reference to data (34 items)
Topic: value as an abstraction (25 items)
Topic: value as an object (29 items)
Topic: weak vs. strong type checking
(42 items)

Updated barberCB 3/06
Copyright © 2002-2008 by C. Bradford Barber. All rights reserved.
Thesa is a trademark of C. Bradford Barber.