[Haskell-cafe] Re: Can we come out of a monad?
Ertugrul Soeylemez
es at ertes.de
Mon Aug 2 01:09:38 EDT 2010
Ivan Miljenovic <ivan.miljenovic at gmail.com> wrote:
> On 2 August 2010 14:47, Lyndon Maydwell <maydwell at gmail.com> wrote:
> > I thought it was pure as, conceptually, readFile isn't 'run' rather
> > it constructs a pure function that accepts a unique world state as a
> > parameter. This might be totally unrealistic, but this is how I see
> > IO functions remaining pure. Is this a good mental model?
>
> That is what I believe Ertugrul is aiming at, but I believe that that
> is a "rule-lawyering" interpretation in trying to argue that all of
> Haskell is pure. We could use this same argument to state that _all_
> programming languages are pure, as they too have implict "World" state
> variables that get passed around.
Given the definition of a Haskell function, Haskell is a pure language.
The notion of a function in other languages is not:
int randomNumber();
The result of this function is an integer. You can't replace the
function call by its result without changing the meaning of the program.
In Haskell, this wouldn't even be a function. It would be a
computation, i.e. simply a value.
Greets,
Ertugrul
--
nightmare = unsafePerformIO (getWrongWife >>= sex)
http://ertes.de/
More information about the Haskell-Cafe
mailing list