<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> I wrote about this in the context of Miranda some time ago …<div class=""><br class=""></div><div class=""> <a href="https://kar.kent.ac.uk/20889/1/interactive_thompson.pdf" class="">https://kar.kent.ac.uk/20889/1/interactive_thompson.pdf</a></div><div class=""><br class=""></div><div class="">Simon<br class=""><div class=""><br class=""></div><div class=""><div><br class=""><blockquote type="cite" class=""><div class="">On 28 Mar 2019, at 18:51, Ian Denhardt <<a href="mailto:ian@zenhack.net" class="">ian@zenhack.net</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div class="">The basic problem is just that it's error prone when you're doing things<br class="">that are non-trivial wrt the lifetime of the file. Part of the original<br class="">motivation for Haskell's "purity" was that lazy evaluation and<br class="">side-effects are hard to think about. In languages that allow it, "don't<br class="">mix laziness and effects" is a bit of common folk-wisdom. See e.g:<br class=""><br class=""> <a href="https://stuartsierra.com/2015/08/25/clojure-donts-lazy-effects" class="">https://stuartsierra.com/2015/08/25/clojure-donts-lazy-effects</a><br class=""><br class="">If I'm writing a simple program that just reads in some data, does<br class="">stuff, and spits it back out, I usually don't stress about it. But for<br class="">long running programs, file descriptor leaks can be a problem, and<br class="">between that and needing to be async-exception safe, the usual resource<br class="">management strategies in Haskell make the whole thing pretty dicey.<br class=""><br class="">Quoting Vanessa McHale (2019-03-28 14:26:22)<br class=""><br class=""><blockquote type="cite" class="">the second issue could be better resolved with linear types!<br class=""></blockquote><br class="">How would this work? Not sure I follow.<br class="">_______________________________________________<br class="">Haskell-Cafe mailing list<br class="">To (un)subscribe, modify options or view archives go to:<br class=""><a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe" class="">http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe</a><br class="">Only members subscribed via the mailman list are allowed to post.</div></div></blockquote></div><br class=""><div class="">
<div class=""><span style="font-family: LucidaGrande;" class="">Simon Thompson | Professor of Logic and Computation </span><br style="font-family: LucidaGrande;" class=""><span style="font-family: LucidaGrande;" class="">School of Computing | University of Kent | Canterbury, CT2 7NF, UK</span><br style="font-family: LucidaGrande;" class=""><a href="mailto:s.j.thompson@kent.ac.uk" style="font-family: LucidaGrande;" class="">s.j.thompson@kent.ac.uk</a><span style="font-family: LucidaGrande;" class=""> | M +44 7986 085754 | W </span><a href="http://www.cs.kent.ac.uk/~sjt" style="font-family: LucidaGrande;" class="">www.cs.kent.ac.uk/~sjt</a></div>
</div>
<br class=""></div></div></body></html>