There is no exact definition of "effect" so this discussion must necessarily be vague and probably not very enlightening. The State Monad may or may not have effects, depending on your definition, but it is definitely pure.<br><div class="gmail_quote"><div dir="ltr">On Wed, Dec 23, 2015 at 5:46 AM Imants Cekusins <<a href="mailto:imantc@gmail.com">imantc@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">> What is the exact defintion of "effect".<br>
<br>
let's try:<br>
<br>
effect:<br>
A change which is a consequence of an action (in this case, function call)<br>
<br>
side effect:<br>
change of environment state which is a consequence of an action (function call)<br>
<br>
pure function:<br>
calling this function does not affect environment state<br>
function returns a value, that's all<br>
<br>
I am not sure if function running inside e.g. state monad and<br>
modifying this monad's state is pure, i.e. if state monad is<br>
environment<br>
_______________________________________________<br>
Beginners mailing list<br>
<a href="mailto:Beginners@haskell.org" target="_blank">Beginners@haskell.org</a><br>
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/beginners" rel="noreferrer" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/beginners</a><br>
</blockquote></div>