[Haskell-cafe] ANN: The Herbie GHC Plugin

Edward Kmett ekmett at gmail.com
Tue Sep 22 20:27:56 UTC 2015


Alternately: One thing I can do with HLint is hint with module annotations
to ignore certain things. Maybe just a HLint-like hint to tell the
HerbiePlugin to ignore a function would suffice?

-Edward



On Tue, Sep 22, 2015 at 4:26 PM, Edward Kmett <ekmett at gmail.com> wrote:

> Another minor complications arises from applying these optimizations to
> the original source code. When I do so, they often involve the original
> expression as a sub-expression, which it then suggests the original
> optimization for, despite the ranges where it is inapplicable not being
> available at that call site.
>
> I don't see a good way to handle that except to find a way to tell herbie
> the actual range the sub-expression can be applied to through some kind of
> source annotation.
>
> -Edward
>
>
> On Tue, Sep 22, 2015 at 4:24 PM, Mike Izbicki <mike at izbicki.me> wrote:
>
>> Thanks :)
>>
>> That's a good suggestion about not calling expressions improved when
>> they're not.  I've just pushed a new patch to the repo that fixes this
>> issue.
>>
>> On Tue, Sep 22, 2015 at 12:48 PM, Edward Kmett <ekmett at gmail.com> wrote:
>> > Okay. Having gone through and chewed on a bunch of the optimizations it
>> has
>> > found, I have to say I officially absolutely adore this plugin!
>> >
>> > It would be nice if it didn't report 'improved' expressions that are the
>> > same as the original, but everything else about it is amazing.
>> >
>> > -Edward
>> >
>> > On Tue, Sep 22, 2015 at 3:08 PM, Edward Kmett <ekmett at gmail.com> wrote:
>> >>
>> >> In this case the primary concern would be that Herbie really needs to
>> have
>> >> an install of racket as well to do its job right. Between that and a
>> >> database, there are a lot of things that aren't usually involved in a
>> normal
>> >> GHC install.
>> >>
>> >> -Edward
>> >>
>> >> On Tue, Sep 22, 2015 at 2:08 PM, Elliot Cameron
>> >> <elliot.cameron at covenanteyes.com> wrote:
>> >>>
>> >>> Does GHC HQ consider the possibility of embedding/shipping plugins
>> like
>> >>> this with normal releases?
>> >>>
>> >>> ________________________________
>> >>> From: Haskell-Cafe <haskell-cafe-bounces at haskell.org> on behalf of
>> Edward
>> >>> Kmett <ekmett at gmail.com>
>> >>> Sent: Tuesday, September 22, 2015 1:39 PM
>> >>> To: mike at izbicki.me
>> >>> Cc: Haskell Cafe
>> >>> Subject: Re: [Haskell-cafe] ANN: The Herbie GHC Plugin
>> >>>
>> >>> Very nice!
>> >>>
>> >>> Now I just need to figure out how to extract the results of these
>> >>> analyses and see if I can understand and apply them manually to what
>> >>> libraries of mine are affected, so that folks who won't or can't run
>> this
>> >>> plugin can derive the benefits.
>> >>>
>> >>> -Edward
>> >>>
>> >>> On Tue, Sep 22, 2015 at 11:17 AM, Mike Izbicki <mike at izbicki.me>
>> wrote:
>> >>>>
>> >>>> 80% of packages in stackage that contain floating point expressions
>> >>>> have numerically unstable expressions.  The Herbie GHC plugin
>> >>>> automatically makes these expressions numerically stable.
>> >>>>
>> >>>> You can find the project on github at:
>> >>>> https://github.com/mikeizbicki/HerbiePlugin
>> >>>> _______________________________________________
>> >>>> Haskell-Cafe mailing list
>> >>>> Haskell-Cafe at haskell.org
>> >>>> http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe
>> >>>
>> >>>
>> >>
>> >
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20150922/da960421/attachment.html>


More information about the Haskell-Cafe mailing list