<div dir="ltr">Hello,<div><br></div><div style>my preference would be to build this kind of functionality (and other related features) in libraries on top of GHC.TypeLits.  This modules was intended to contain only a minimal set of the constants that the compiler needs to know about, and it already may have too much in it.</div>
<div style><br></div><div style>On the concrete issue:  orphan instances could be avoided if the type lits instances are defined in the same module as the class.</div><div style><br></div><div style>-Iavor</div></div><div class="gmail_extra">
<br><br><div class="gmail_quote">On Thu, Feb 7, 2013 at 6:50 AM, Gabor Greif <span dir="ltr">&lt;<a href="mailto:ggreif@gmail.com" target="_blank">ggreif@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
In its current state it is not tied to TypeLits, but when Richard adds<br>
his magic it probably will be. It is still an open issue where to put<br>
what, and whether a new module would be fitting.<br>
Richard surely will comment on this. I&#39;d prefer the new instance<br>
definitions in TypeLits to avoid orphans. Thanks for your input<br>
though, this is exactly the kind of feedback we were hoping for :-)<br>
<br>
Cheers,<br>
<br>
    Gabor<br>
<br>
<br>
[looks like I lost a previous version of this response, sorry if you<br>
get it twice]<br>
<div class="HOEnZb"><div class="h5"><br>
On 2/7/13, José Pedro Magalhães &lt;<a href="mailto:jpm@cs.uu.nl">jpm@cs.uu.nl</a>&gt; wrote:<br>
&gt; Hey Gabor,<br>
&gt;<br>
&gt; And why should it be part of base? Don&#39;t get me wrong, I&#39;m not saying this<br>
&gt; is not important/useful. I&#39;m just wondering about the reason to have it in<br>
&gt; base.<br>
&gt; Is it tied to TypeLits?<br>
&gt;<br>
&gt;<br>
&gt; Cheers,<br>
&gt; Pedro<br>
&gt;<br>
&gt; On Thu, Feb 7, 2013 at 2:21 PM, Gabor Greif &lt;<a href="mailto:ggreif@gmail.com">ggreif@gmail.com</a>&gt; wrote:<br>
&gt;<br>
&gt;&gt; Oi José,<br>
&gt;&gt;<br>
&gt;&gt; this is a library-only issue, the branch is in libraries/base, thus<br>
&gt;&gt; somewhat tied to the 7.8 release.<br>
&gt;&gt;<br>
&gt;&gt; Cheers,<br>
&gt;&gt;<br>
&gt;&gt;     Gabor<br>
&gt;&gt;<br>
&gt;&gt; On 2/7/13, José Pedro Magalhães &lt;<a href="mailto:jpm@cs.uu.nl">jpm@cs.uu.nl</a>&gt; wrote:<br>
&gt;&gt; &gt; On Wed, Feb 6, 2013 at 7:17 PM, Gabor Greif &lt;<a href="mailto:ggreif@gmail.com">ggreif@gmail.com</a>&gt; wrote:<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; On 2/6/13, Richard Eisenberg &lt;<a href="mailto:eir@cis.upenn.edu">eir@cis.upenn.edu</a>&gt; wrote:<br>
&gt;&gt; &gt;&gt; &gt; The only thing that stops me from saying &quot;push&quot; is that I think<br>
&gt;&gt; &gt;&gt; &gt; there<br>
&gt;&gt; &gt;&gt; &gt; is<br>
&gt;&gt; &gt;&gt; a<br>
&gt;&gt; &gt;&gt; &gt; better organization for all of this. The ideas we&#39;re discussing here<br>
&gt;&gt; &gt;&gt; (things<br>
&gt;&gt; &gt;&gt; &gt; like the Void type) don&#39;t seem to belong in TypeLits -- it has<br>
&gt;&gt; &gt;&gt; &gt; nothing<br>
&gt;&gt; &gt;&gt; to do<br>
&gt;&gt; &gt;&gt; &gt; with literals. Time for a GHC.TypeReasoning module? Does someone<br>
&gt;&gt; &gt;&gt; &gt; have<br>
&gt;&gt; a<br>
&gt;&gt; &gt;&gt; &gt; better name?<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; Sounds okay. We can wiggle around on the new branch &#39;till we feel<br>
&gt;&gt; &gt;&gt; comfortable, but I&#39;d like to land this on master before the v7.8 train<br>
&gt;&gt; &gt;&gt; leaves the station (i.e. the release branch is created).<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Can you perhaps summarise exactly what needs to be added to GHC for<br>
&gt;&gt; &gt; this<br>
&gt;&gt; to<br>
&gt;&gt; &gt; work?<br>
&gt;&gt; &gt; It&#39;s not immediately clear to me why this is not just a library issue.<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Thanks,<br>
&gt;&gt; &gt; Pedro<br>
&gt;&gt; &gt;<br>
&gt;&gt;<br>
&gt;<br>
<br>
</div></div><div class="HOEnZb"><div class="h5">_______________________________________________<br>
ghc-devs mailing list<br>
<a href="mailto:ghc-devs@haskell.org">ghc-devs@haskell.org</a><br>
<a href="http://www.haskell.org/mailman/listinfo/ghc-devs" target="_blank">http://www.haskell.org/mailman/listinfo/ghc-devs</a><br>
</div></div></blockquote></div><br></div>