[Haskell-cafe] "show" for functional types

Greg Buchholz haskell at sleepingsquirrel.org
Fri Mar 31 19:57:02 EST 2006


    In section 5 of _Fun with Phantom Types_, Hinze states...

    "Let us move on to one of the miracles of theoretical computer
science. In Haskell, one cannot show values of functional types. For
reasons of computability, there is no systematic way of showing
functions and any ad-hoc approach would destroy referential transparency
(except if show were a constant function). For instance, if show yielded
the text of a function definition, we could distinguish, say, quick sort
from merge sort. Substituting one for the other could then possibly
change the meaning of a program."

...I guess I'm not understanding what that means.   Would there be some
sort of contradiction that arises when trying to evaluate "show (show)"
or somesuch?  Can anyone point me in the direction of information that
tries to explain why this is?  I'm at a loss as to what search terms to
use.

Thanks, 

Greg Buchholz


More information about the Haskell-Cafe mailing list