[Haskell-cafe] Re: Laziness question

Nicolas Pouillard nicolas.pouillard at gmail.com
Tue Aug 3 11:50:40 EDT 2010


On Tue, 3 Aug 2010 16:24:54 +0200, Stefan Holdermans <stefan at vectorfabrics.com> wrote:
> Nicolas,
> 
> > OK, I better understand now where we disagree. You want to see in the type
> > whether or not the free theorem apply, I want them to always apply when
> > no call to unsafe function is made.
> 
> Implementing your suggestion would make me feel uncomfortable. Turning seq into an unsafe operations effectively places it outside the language, like unsafePerformIO isn't really part of the language (in my view, at least). But experience has made it clear that there are plenty of occasions in which we cannot really do without seq (even though its presence in the language is prominent subject of debate).

If we ignore the solution using Typeable for now.
The actual seq would be considered unsafe but seq would be re-introduced as 
a method of a type class with instances for many types but not
for functions. So in this view only forcing functions would be considered
"out of the language".

-- 
Nicolas Pouillard
http://nicolaspouillard.fr


More information about the Haskell-Cafe mailing list