<div dir="ltr"><div>All I can give are examples.  These have single Internal modules.<br><br><a href="https://hackage.haskell.org/package/text-1.2.2.2/docs/Data-Text-Internal.html">https://hackage.haskell.org/package/text-1.2.2.2/docs/Data-Text-Internal.html</a><br><a href="https://hackage.haskell.org/package/aeson-1.2.2.0/docs/Data-Aeson-Internal.html">https://hackage.haskell.org/package/aeson-1.2.2.0/docs/Data-Aeson-Internal.html</a><br><a href="https://hackage.haskell.org/package/pipes-4.3.5/docs/Pipes-Internal.html">https://hackage.haskell.org/package/pipes-4.3.5/docs/Pipes-Internal.html</a><br><a href="https://hackage.haskell.org/package/reflex-0.4.0/docs/Reflex-Spider-Internal.html">https://hackage.haskell.org/package/reflex-0.4.0/docs/Reflex-Spider-Internal.html</a><br><br></div>whereas opaleye for example has an entire Internal hierarchy.<br><br><a href="https://hackage.haskell.org/package/opaleye-0.6.0.0">https://hackage.haskell.org/package/opaleye-0.6.0.0</a><br></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Oct 2, 2017 at 6:49 AM, Baa <span dir="ltr"><<a href="mailto:aquagnu@gmail.com" target="_blank">aquagnu@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">> It is common to export an Foo.Internal module that has the internals<br>
> of your library in it, with a doc at the top that this is meant for<br>
> internal use.  It can be used both for testing and sometimes the user<br>
> of your library can do something with it you didn't think of if he<br>
> has access to the internals.<br>
<br>
</span>Hm, but if I have 10 modules in src/ (m1.hs, ..., m10.hs) I must create,<br>
for example 10 folders like src/m1/, ..., src/m10/ and their individual<br>
M*.Internal module, right? So, `m1`, for example, becomes:<br>
<br>
  src/<br>
    m1/<br>
      Internal.hs<br>
      All.hs<br>
?<br>
<br>
And `All.hs` imports and re-exports module (or its part only)<br>
`Internal.hs`? Something like this?<br>
<div class="HOEnZb"><div class="h5"><br>
<br>
===<br>
Best regards, Paul<br>
______________________________<wbr>_________________<br>
Beginners mailing list<br>
<a href="mailto:Beginners@haskell.org">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-<wbr>bin/mailman/listinfo/beginners</a><br>
</div></div></blockquote></div><br></div>