Code Comments

Programming Forum and web based access to our favorite programming groups.
For Programmers: Free Programming Magazines | New: Database administration forum
Registration is free! Edit your profileCalendarFind other membersFrequently Asked QuestionsSearch -> 
Post New Thread











Thread
Author

Why is it called "referential transparency"?
Hello ---

Newbie question: why is the term "referential transparency" used?
What are the "inner workings" that justify this terminology, in terms
of what it is referencing, etc?
I mean, I understand the concept, but I am just unable to give a
clear explanation as to "why".

Thank you,

Henry

Report this thread to moderator Post Follow-up to this message
Old Post
EL Henry
04-25-04 11:47 PM


Re: Why is it called "referential transparency"?
 

>  Newbie question: why is the term "referential transparency" used?

I'm not 100% sure when the term was first used, but I think it was
first used in philosophy, in connection with quotation, reported
speech, and "propositional attitudes", eg. belief, doubt, etc.  I
think it may have been Bertrand Russell who first used the term, but
please google, I could be completely wrong.  I'm pretty sure that the
concept (if not the terminology) is centuries old.

A (propositional) context in which a term occurred was said to be
referentially opaque if when you substitute a term with the same
reference for that occurrence, the truth value of the proposition can
change.  Think of something like "Fred doubts that the Morning Star
is the Evening Star".  (MS and ES both names of the planet Venus.)

So roughly speaking, referential transparency means you can
freely substitute terms with the same reference.

I don't know who introduced the term into computer science.
Someone who knew some philosophy, no doubt.

Peter Hancock

Report this thread to moderator Post Follow-up to this message
Old Post
Peter G. Hancock
04-27-04 07:23 AM


Re: Why is it called "referential transparency"?
Peter G. Hancock <hancock@spamcop.net> wrote in article <oqekqbo1zg.fsf@premise.demon.co.uk
> in comp.lang.functional:
> I'm not 100% sure when the term was first used, but I think it was
> first used in philosophy, in connection with quotation, reported
> speech, and "propositional attitudes", eg. belief, doubt, etc.  I
> think it may have been Bertrand Russell who first used the term, but
> please google, I could be completely wrong.  I'm pretty sure that the
> concept (if not the terminology) is centuries old.

I'd also like to know who/what to cite for the terms "referential
transparency" and "referential opacity", especially if it is not:

Quine, Willard Van Orman. 1960.  Word and object.  Cambridge: MIT Press.

--
Edit this signature at http://www.digitas.harvard.edu/cgi-bin/ken/sig
Be it declared and enacted by this present Parliament / That the People
of England / are / a Commonwealth and free State / without any King or
House of Lords.        -- An Act declaring England to be a Commonwealth
1649-05-19 | 355 years | 2004-05-19            http://tinyurl.com/2dqnh

Report this thread to moderator Post Follow-up to this message
Old Post
Chung-chieh Shan
04-27-04 07:23 AM


Re: Why is it called "referential transparency"?
 

> I'd also like to know who/what to cite for the terms "referential
> transparency" and "referential opacity", especially if it is not:

> Quine, Willard Van Orman. 1960.  Word and object.  Cambridge: MIT Press.

I found: http://sources.redhat.com/ml/guile/...8/msg00401.html
which has the quote:

"I was wrong in believing that the terminology is due to Quine.  He
explicitly attributes it to Whitehead and Russell, "Principia
Mathematica" 2d ed, vol 1 p 665 (1925)."

BTW, somewhere else I saw that Quine attributes the concept to Frege.
But I (unreliably) recall a long discussion by Geach somewhere which
gave me the impression the concept was well-known in medieval
philosophy.

Peter Hancock

Report this thread to moderator Post Follow-up to this message
Old Post
Peter G. Hancock
04-27-04 07:23 AM


Re: Why is it called "referential transparency"?
Chung-chieh Shan <ccshan@post.harvard.edu> writes:

> I'd also like to know who/what to cite for the terms "referential
> transparency" and "referential opacity", especially if it is not:
>
> Quine, Willard Van Orman. 1960.  Word and object.  Cambridge: MIT Press.

The paper

H. Søndergaard and P. Sestoft. Referential transparency, definiteness
and unfoldability. Acta Informatica, 27:505-517, 1990.
(Reviewed in Computing Reviews 32(3):144-145, 1991, entry 9103-0154).

discussed referential transparency, the origin of the term, and some
related concepts.

Unfortunately I don't have the paper in electronic form any longer.

Peter
--
Department of Natural Sciences            http://www.dina.kvl.dk/~sestoft/
Royal Veterinary and Agricultural University          *  Tel +45 3528 2334
Thorvaldsensvej 40, DK-1871 Frederiksberg C, Denmark  *  Fax +45 3528 2350

Report this thread to moderator Post Follow-up to this message
Old Post
Peter Sestoft
04-27-04 07:23 AM


Re: Why is it called "referential transparency"?

> Newbie question: why is the term "referential transparency" used?
> What are the "inner workings" that justify this terminology, in
> terms of what it is referencing, etc?
> I mean, I understand the concept, but I am just unable to give a
> clear explanation as to "why".

It's a not-very-accurate application of a term coined by W.V.O. Quine
in his paper "Reference and Modality", from his collection _From a
Logical Point of View_ (though Quine attributed the guts of the idea
to Russell in _Principia Mathematica_ volume 1 appendix C).

Your bafflement is entirely justified.  Quine's concept has bugger-all
resemblance to the pirated version found in the functional programming
literature.  (I think David Turner was responsible for that).

========> Email to "j-c" at this site; email to "bogus" will bounce <=======
=
Jack Campin: 11 Third Street, Newtongrange, Midlothian EH22 4PU; 0131 660476
0
<http://www.purr.demon.co.uk/purrhome.html>  food intolerance data & recipes
,
Mac logic fonts, Scots traditional music files and CD-ROMs of Scottish music
.


Report this thread to moderator Post Follow-up to this message
Old Post
bogus address
04-27-04 10:13 AM


Re: Why is it called "referential transparency"?
hancock@spamcop.net (Peter G. Hancock) wrote in message news:<oqzn8xydt5.fsf@premise.demon.
co.uk>... 
> 
>
> There's a lot of scope for argument about what the "reference" of an
>
> I hope that's of some help.  It's a hugely subtle topic.
>
> Someone somewhere suggested that it was Landin and/or Strachey who
> first introduced the (philosophical) terminology into computer
> science.  Jack Campin suggests David Turner.  Who knows.
>
> Peter Hancock

Yes, very interesting that was, indeed. Thank you and to all other
for the references (the ones that we could see) :-)

Henry

Report this thread to moderator Post Follow-up to this message
Old Post
EL Henry
04-28-04 12:56 AM


Re: Why is it called "referential transparency"?
"EL Henry" <synthespian@uol.com.br> wrote in 
>
>  Yes, very interesting that was, indeed. Thank you and to all other
> for the references (the ones that we could see) :-)
>

Transparency pops up in distributed relational database jargon, not sure if
referential is one, essentially meaning that the operations of the database 
are
indistinguishable from a single server.  i.e. the extra protocols are transp
arent,
you don't see them.

Herc




Report this thread to moderator Post Follow-up to this message
Old Post
|-|erc
04-29-04 06:18 PM


Re: Why is it called "referential transparency"?
 

>  Newbie question: why is the term "referential transparency" used?
> What are the "inner workings" that justify this terminology, in terms
> of what it is referencing, etc?

There's a lot of scope for argument about what the "reference" of an
expression might be in functional programming, but one answer which
might secure some agreement is that the reference of an expression is
the value to which it reduces (supposing that it does reduce to
something).

Now one might distinguish between those contexts C[...] (expressions
with a hole) where the value of C[e] depends only on the value of e,
and those where it depends on something more.  For example, some
people think that one should not evaluate inside a lambda-expression
(even if what one evaluates is closed); under such a regime,
lambda-expressions are already in normal form (even if they contain
occurrences of closed expressions that can be evaluated).  Those
people might summarise their position by saying that a context
\x->C[...] is not referentially transparent.

When the notion of referential transparency/opacity was first
introduced, (I think that) the only contexts C[...] one worried about
were propositional contexts, where the reference of C[e] (a
proposition) was supposed to be a truth value.  So one talked about
substitutions of expressions with equal reference (denotation) that
could be made "salva veritate" (preserving truth value).
Contexts that are not referentially transparent might be said to depend
on more than the reference of their subexpressions, and one might ask
what that might be.  One answer might be that they depend on the
meaning or "sense" of the expression, where the "sense" of the expression
is the means by which the reference is determined.

I hope that's of some help.  It's a hugely subtle topic.

Someone somewhere suggested that it was Landin and/or Strachey who
first introduced the (philosophical) terminology into computer
science.  Jack Campin suggests David Turner.  Who knows.

Peter Hancock

Report this thread to moderator Post Follow-up to this message
Old Post
Peter G. Hancock
04-30-04 01:24 AM


Re: Why is it called "referential transparency"?
I wrote:

> The paper
>
>   H. Søndergaard and P. Sestoft. Referential transparency, definiteness
>   and unfoldability. Acta Informatica, 27:505-517, 1990.
>   (Reviewed in Computing Reviews 32(3):144-145, 1991, entry 9103-0154).
>
> discussed referential transparency, the origin of the term, and some
> related concepts.
>
> Unfortunately I don't have the paper in electronic form any longer.

Thanks to John Atwood at HP I now have a scanned copy on my homepage:

http://www.dina.kvl.dk/~sestoft/pap...Sestoft1990.pdf

Peter
--
Department of Natural Sciences            http://www.dina.kvl.dk/~sestoft/
Royal Veterinary and Agricultural University          *  Tel +45 3528 2334
Thorvaldsensvej 40, DK-1871 Frederiksberg C, Denmark  *  Fax +45 3528 2350

Report this thread to moderator Post Follow-up to this message
Old Post
Peter Sestoft
05-04-04 08:00 PM


Sponsored Links




Last Thread Next Thread Next
Search this forum -> 
Post New Thread

Functional archive

Show a Printable Version Send to friend Email This Page to Someone! subscribe to this thread Receive updates to this thread
Computer Consultants
Programming Jobs
Visual Basic Controls
SQL Server Programming
Webservices
Java Security
Visual Studio
C# Programming
Visual J++
Software engineering
Open source Software
Perl Programming
PHP Programming
ASP Programming
ASP .NET Programming
Visual Basic Programming
Windows Scripting Host
Java Programming
Java Help
Java Beans
VBScript
Cobol
MAC Applications
Unix Programming
Forum Jump:
All times are GMT. The time now is 02:45 PM.

 
Free MCSE Braindumps | Real Estate Topics

Programming forum archive

Copyrights CodeComments.com 2004 - 2006

Powered by vBulletin Copyright 2000-2006 Jelsoft Enterprises Limited.