<div dir="ltr">Hello,<div><br></div><div>I am a bit unclear on what you mean by "programatically": do you mean from within GHC or is that using something like Template Haskell?</div><div><br></div><div>-Iavor</div>
</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Thu, Jun 26, 2014 at 3:33 PM, 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">Hello devs,<br>
<br>
I have<br>
<br>
{{{<br>
data D (n :: Symbol)<br>
}}}<br>
<br>
in my module, and I want to obtain a type<br>
<br>
{{{<br>
D "YAY!"<br>
}}}<br>
<br>
programmatically. Where can I find code that performs this (or<br>
something similar)?<br>
<br>
1) I have to look up |D| in the current TyEnv (what if it is in a<br>
specific module?),<br>
2) I have to build the type index (of kind Symbol), this involves<br>
FastString, looks non-trivial,<br>
3) Apply 1) on 2), this is easy.<br>
<br>
Any hints welcome!<br>
<br>
Thanks and cheers,<br>
<br>
    Gabor<br>
<br>
<br>
PS: some morsels I have so far:<br>
<br>
for 1)<br>
compiler/prelude/PrelNames.lhs:gHC_GENERICS    = mkBaseModule (fsLit<br>
"GHC.Generics")<br>
_______________________________________________<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>
</blockquote></div><br></div>