Topic: definition
Topic: expression language
Topic: formal methods and languages
Topic: functional programming
Topic: meaning vs. reference
Topic: names as rigid designators
Topic: number representation
Topic: object and value equivalence
Topic: object modification
Topic: proper names
Topic: reduction languages
Topic: reductionism
Topic: restricted and extended types
Topic: safe use of pointers
Topic: uniform reference to data
Topic: value as an abstraction
Topic: value as an object
Topic: weak vs. strong type checking
| |
Summary
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
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
Quote: the symbol string 1+5 is not 6 in all circumstances, for example 21+52; requires syntactic analysis
| Subtopic: natural language
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
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
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
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
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
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
Quote: Codd developed relational databases to solve data-maintenance abnormalities due to failures in referential transparency [»cobbRH11_1990]
| Subtopic: failure of substitutivity
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? [»straC8_1967]
|
Related Topics
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)
|