as maintainer of two of the haskell libraries they use, a member of the core libraries committee, and a hackage trustee, i'd like to throw in my two cents:<p>1) i see they are doing fully qualified imports. please add major bounds to your version deps, stack doesn't excuse not tracking what versions you used!<p>2) they have<p>"data Next a
= Done !a
| Step !a
"
in their code,<p>this tells me they could have possibly benefited using the stream abstraction in Vector!<p><a href="https://hackage.haskell.org/package/vector-0.12.0.2/docs/Data-Vector-Fusion-Stream-Monadic.html" rel="nofollow">https://hackage.haskell.org/package/vector-0.12.0.2/docs/Dat...</a> is a link to the latter