Request for comment on new package

David Feuer david.feuer at gmail.com
Tue Aug 6 07:29:49 UTC 2019


Of course, I forgot to actually link to the package candidate. Whoops!
Here it is:

http://hackage.haskell.org/package/lazify-0.1.0.0/candidate

On Tue, Aug 6, 2019 at 3:25 AM David Feuer <david.feuer at gmail.com> wrote:

> I've put together a small package for lazifying record types. There's a
> "classy" version in Data.Lazify and a Generic-only version in
> Data.Lazify.Generic. A few examples are below. I'd love to hear comments on
> what looks good and what should be changed before I make the first release.
> As usual, names are the hardest part. Note especially that the operator
> ($~) is defined in *both* Data.Lazify and Data.Lazify.Generic, and that no
> operator corresponds to genericLazify. Hrmm mumble.
>
> lazify (1, 2) = (1, 2)
> lazify undefined = (_|_, _|_, _|_)
> lazify undefined = Sum (_|_, _|_, _|_)
>
> genericLazify (1,2) = (1,2)
> genericLazify undefined = (_|_, _|_, _|_)
> genericLazify (Sum (MyCon x y)) = ... oops, MyType isn't an instance of
> Lazifiable
>
> lazifyGeneric (1,2) = (1,2)
> lazifyGeneric undefined = (_|_, _|_, _|_)
> lazifyGeneric (Sum (MyCon x y)) = Sum (MyCon x y)
>
> Thanks in advance,
> David
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/libraries/attachments/20190806/c1df784e/attachment.html>


More information about the Libraries mailing list