<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"><<a href="mailto:ggreif@gmail.com" target="_blank">ggreif@gmail.com</a>></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'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 <<a href="mailto:jpm@cs.uu.nl">jpm@cs.uu.nl</a>> wrote:<br>
> Hey Gabor,<br>
><br>
> And why should it be part of base? Don't get me wrong, I'm not saying this<br>
> is not important/useful. I'm just wondering about the reason to have it in<br>
> base.<br>
> Is it tied to TypeLits?<br>
><br>
><br>
> Cheers,<br>
> Pedro<br>
><br>
> On Thu, Feb 7, 2013 at 2:21 PM, Gabor Greif <<a href="mailto:ggreif@gmail.com">ggreif@gmail.com</a>> wrote:<br>
><br>
>> Oi José,<br>
>><br>
>> this is a library-only issue, the branch is in libraries/base, thus<br>
>> somewhat tied to the 7.8 release.<br>
>><br>
>> Cheers,<br>
>><br>
>> Gabor<br>
>><br>
>> On 2/7/13, José Pedro Magalhães <<a href="mailto:jpm@cs.uu.nl">jpm@cs.uu.nl</a>> wrote:<br>
>> > On Wed, Feb 6, 2013 at 7:17 PM, Gabor Greif <<a href="mailto:ggreif@gmail.com">ggreif@gmail.com</a>> wrote:<br>
>> ><br>
>> >> On 2/6/13, Richard Eisenberg <<a href="mailto:eir@cis.upenn.edu">eir@cis.upenn.edu</a>> wrote:<br>
>> >> > The only thing that stops me from saying "push" is that I think<br>
>> >> > there<br>
>> >> > is<br>
>> >> a<br>
>> >> > better organization for all of this. The ideas we're discussing here<br>
>> >> (things<br>
>> >> > like the Void type) don't seem to belong in TypeLits -- it has<br>
>> >> > nothing<br>
>> >> to do<br>
>> >> > with literals. Time for a GHC.TypeReasoning module? Does someone<br>
>> >> > have<br>
>> a<br>
>> >> > better name?<br>
>> >><br>
>> >> Sounds okay. We can wiggle around on the new branch 'till we feel<br>
>> >> comfortable, but I'd like to land this on master before the v7.8 train<br>
>> >> leaves the station (i.e. the release branch is created).<br>
>> >><br>
>> ><br>
>> > Can you perhaps summarise exactly what needs to be added to GHC for<br>
>> > this<br>
>> to<br>
>> > work?<br>
>> > It's not immediately clear to me why this is not just a library issue.<br>
>> ><br>
>> ><br>
>> > Thanks,<br>
>> > Pedro<br>
>> ><br>
>><br>
><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>