I think Jake is referring to my vector-space package.  He did the work of writing 171 INLINE pragmas, covering lots of methods and standalone function defs.  I&#39;m simultaneously grateful for the effort and repelled by the added syntactic noise.  Also concerned about the impact of all these directives on other uses of vector-space.  If all this inlining is a uniform win, I&#39;d rather ghc did it for me.  If the ghc implementers have reasons not to do so in general, then I&#39;d expect that some of those reasons apply to vector-space (and many other libraries) as well.  It&#39;s not like I&#39;m applying some kind of domain-specific understanding that ghc doesn&#39;t have access to.<br>

<br>I&#39;m raising my concerns here in the hopes of stimulating some creative thinking and suggestions about addressing this sort of situation more generally.<br><br>  - Conal<br><br><div class="gmail_quote">On Sun, Mar 7, 2010 at 9:23 PM, Don Stewart <span dir="ltr">&lt;<a href="mailto:dons@galois.com">dons@galois.com</a>&gt;</span> wrote:<br>

<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">jake.mcarthur:<br>
<div class="im">&gt; I&#39;ve run into an issue with inlining that I&#39;m not sure how to work<br>
&gt; around. I am instantiating some pre-existing type classes with<br>
&gt; Vector-based types. There already exist generic functions in modules I<br>
&gt; do not control that use this type class, and they are not tagged with<br>
&gt; the INLINE pragma. I am doubtful, but I figure it is worth at least<br>
&gt; asking: is there some practical workaround for this kind of situation<br>
&gt; that anybody knows about?<br>
&gt;<br>
<br>
</div>I don&#39;t know of a way, other than patching the library code.<br>
If it makes a difference to you, it probably makes a difference to lots<br>
of people.<br>
<font color="#888888"><br>
-- Don<br>
</font><div><div></div><div class="h5">_______________________________________________<br>
Haskell-Cafe mailing list<br>
<a href="mailto:Haskell-Cafe@haskell.org">Haskell-Cafe@haskell.org</a><br>
<a href="http://www.haskell.org/mailman/listinfo/haskell-cafe" target="_blank">http://www.haskell.org/mailman/listinfo/haskell-cafe</a><br>
</div></div></blockquote></div><br>