ANN: deepseq-bounded, seqaid, leaky

Andrew Seniuk rasfar at gmail.com
Sun Dec 21 22:20:30 UTC 2014


Finally, in case the lack of constraints on dependencies put anyone off,
please note that all deps in all three projects now have minimum and
maximum bounds.

Also, I should take this chance to note that there were no cache controls
in the homepages linked above, so please force reloads in your browser to
see latest versions. (The pages /now/ have caching prevention so this
should not be necessary again.)

And, it's nice to share your thoughts, don't you think?

-Andrew

On Fri, Dec 19, 2014 at 8:01 AM, Andrew Seniuk <rasfar at gmail.com> wrote:

> Sorry, that was my first Reddit post and I messed up.
>
> Please use this link
> http://www.reddit.com/r/haskell/comments/2pscxh/ann_deepseqbounded_seqaid_leaky/
>
> -Andrew
>
> On Fri, Dec 19, 2014 at 7:07 AM, Andrew Seniuk <rasfar at gmail.com> wrote:
>
>> This trio of related packages explores strictness control in a variety of
>> ways.
>>
>> deepseq-bounded provides classes and generic functions to artificially
>> force evaluation, to extents controlled by static or dynamic configuration.
>>
>> seqaid puts that into practise, providing a GHC plugin to auto-instrument
>> your package with a strictness harness, which is dynamically optimisable
>> during runtime.  This is supported directly in the GHC compilation
>> pipeline, without requiring (or performing!) any edits to your sources.
>>
>> leaky is a minimal, prototypic executable that leaks space under current
>> state-of-the-art compilation (GHC 7.8.3 -O2, at the present time).
>>
>> deepseq-bounded
>>   hackage: https://hackage.haskell.org/package/deepseq-bounded
>>   homepage: http://www.fremissant.net/deepseq-bounded
>>
>> seqaid
>>   hackage: https://hackage.haskell.org/package/seqaid
>>   homepage: http://www.fremissant.net/seqaid
>>
>> leaky
>>   hackage: https://hackage.haskell.org/package/leaky
>>   homepage: http://www.fremissant.net/leaky
>>
>> Reddit discussion for the three together:
>>
>> http://www.reddit.com/r/haskell/comments/2ps8f5/ann_deepseqbounded_seqaid_leaky/
>>
>> Easiest way to try them all, is to install seqaid and run the demo:
>>
>>   cabal install seqaid
>>   seqaid demo
>>
>> This tests seqaid on a local copy of the leaky source package.
>>
>> It turned out to be routine to extend deepseq-bounded and seqaid to
>> dynamically configurable parallelisation (paraid?).  Many other wrappers
>> could be explored, too!  Maybe seqaid should be renamed to koolaid or
>> something...
>>
>> It's a pretty complicated system, and just first release, so there's
>> bound to be lots of problems.  I've not set up a bug tracker, but will
>> maintain a casual list of bugs and feature requests at
>>
>>   http://www.fremissant.net/seqaid/trac
>>
>> and will set up a proper tracker if there's interest.
>>
>> Any isssues (or comments), I'm here, or on the reddit discussion (or
>> email).
>>
>> Andrew Seniuk
>> rasfar on #haskell
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/ghc-devs/attachments/20141221/7f01ae42/attachment.html>


More information about the ghc-devs mailing list