[Haskell-cafe] Fast JSON validation - reducing allocations

Ben Gamari ben at smart-cactus.org
Fri May 12 15:47:32 UTC 2017


Mikolaj Konarski <mikolaj at well-typed.com> writes:

> Truly impressive. Amazing.
>
> I wonder what style of coding of inner loops
> leads to such good results in 8.2. Is it easy to describe?
> Or is the answer "any" or "simplest" or "natural"? If not,
> can it be captured as some recursion combinators perhaps?
>
My fairly unhelpful description would be that carefully-written programs
that look like they shouldn't allocate will be helped most. Previously
these program (e.g. probably the one here) would allocate closures due
to GHC's failure to identify some types of join points. In 8.2 our
treatment of join points is more robust and consequently this
unnecessary allocation will be more reliably eliminated.

Cheers,

- Ben

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 487 bytes
Desc: not available
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20170512/6c90c093/attachment.sig>


More information about the Haskell-Cafe mailing list