<div dir="ltr"><div dir="ltr">On Wed, Jun 26, 2019 at 1:48 AM J. Gareth Moreton <<a href="mailto:gareth@moreton-family.com">gareth@moreton-family.com</a>> wrote:<br></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Maybe I'm misreading this, but does that mean you're not a fan of the <br>
"pure" directive, Jonas?<br></blockquote><div><br></div><div>It seems like if anything, he may have misunderstood that in this context, "in the hands of the user" is not intended to mean that people will be able to just mark absolutely anything as `pure` and have it magically work somehow.</div><div><br></div><div>I.E. as you've stated, functions marked `pure` will be checked, and the compiler will give an error if it turns out they cannot actually *be* `pure`.</div><div><br></div><div>In general though, IMO, something like `pure` that will be usable from all backends is certainly more useful on a longterm basis than relying directly on optimizations from the LLVM backend (which has rather limited platform support.)</div></div></div>