Skip to content

MonadFix #20

@treeowl

Description

@treeowl

In my experience with Data.Sequence and especially Data.Tree, I have learned that it is extremely difficult to test that a MonadFix instance obeys the laws. It also tends to be very difficult to prove that the laws hold. It would therefore be very helpful if checkers could provide some assistance. It's tricky because the functions passed to mfix need to be lazy, and their detailed strictness needs to be reflected in certain ways in the results of mfix. I suspect the right approach is to find a way to generate some reasonably large but very well-behaved class of functions, probably with some help from the user.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions