On Mon, 24 Dec 2007, Cristian Baboi wrote: > While reading the Haskell language report I noticed that function type is > not an instance of class Read. > > I was told that one cannot define them as an instance of class Show > without breaking "referential transparency" or printing a constant. > > f :: (a->b)->String > f x = "bla bla bla" > > How can I define a function to do the inverse operation ? > g :: String -> ( a -> b ) > > This time I cannot see how referential transparency will deny it. > What's the excuse now ?
Like 'show' generating "[(0,0), (1,1), (4,2), (9,3), for 'sqrt', 'read' could parse only value tables. _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe