[Haskell-cafe] Reddy on Referential Transparency

Chris Dornan chris at chrisdornan.com
Fri Jul 27 16:51:21 CEST 2012

Claus Reinke [mailto:claus.reinke at talk21.com]:

> I happen to disagree with Reddy's assertion that having to explain a
complicated language
> with the help of a less complicated one is perfectly adequate. Reddy
himself has done good
> work on semantics of programming languages, but I'm a programmer first -
if the language
> I work with does not give me the qualities that its semantics give me,
then my means of
> expression and understanding are limited by the translation.

I also disagree. Haskell makes extensive use of translation into a core but
those translations
work so well because of the strong referential transparency guarantees that
you get with

Equational reasoning locally and leaning on types for refactoring are
intimately integrated into
my functional programming process (as I bet they are for most Haskell
programmers) -- I think
the academic promise of RT has become quite 'real'.

Something that may not be obvious to someone who doesn't program Haskell at
scale is the major
benefits of 'ghc -Wall'.  Working with the -Wall subset of Haskell (as many
do on production code)
problems with accidental variable capture is much more difficult to do -- a
terrific safeguard when
(equationally) working code.


More information about the Haskell-Cafe mailing list