<div dir="ltr">For what it's worth, I agree with you both that it's important to document the laws, and that it's not the most friendly way to begin the documentation for a reader who is unfamiliar with the concept. It's not clear to me whether the documentation ought to be optimized for readers who are or aren't familiar with the concept, but I lean to the latter, which means putting the type class laws at the end (but still easily accessible) makes sense to me.</div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Sep 16, 2021 at 7:47 PM Viktor Dukhovni <<a href="mailto:ietf-dane@dukhovni.org">ietf-dane@dukhovni.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On Thu, Sep 16, 2021 at 06:51:42PM -0400, David Feuer wrote:<br>
<br>
> The last time I went to look at the laws it took me a couple minutes to<br>
> find them. I use them to write instances. Pretty important, IMO.<br>
<br>
I agree the laws are important to document, I just don't think they<br>
belong at the top of the module. The beginner to intermediate users<br>
will be using the library and existing instances for some time before<br>
they start to write their own instances.<br>
<br>
If more modules adopt something like the style of the new Data.Foldable,<br>
experienced users will know to look for the laws at the end, if not<br>
still present at the top of the module.<br>
<br>
Of course perhaps the community would prefer the original Laws first<br>
format, I'm fine with that emerging as the consensus. Perhaps worthy<br>
of a separate thread (made it so).<br>
<br>
Of course the conjectured users who might most benefit from not being<br>
intimidated by being exposed to laws before they're ready to understand<br>
them might not be present on this forum...<br>
<br>
-- <br>
Viktor.<br>
_______________________________________________<br>
Haskell-Cafe mailing list<br>
To (un)subscribe, modify options or view archives go to:<br>
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe" rel="noreferrer" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe</a><br>
Only members subscribed via the mailman list are allowed to post.</blockquote></div>