{"action":"created","issue":{"url":"https://api.github.com/repos/garyb/purescript-quickcheck-laws/issues/23","repository_url":"https://api.github.com/repos/garyb/purescript-quickcheck-laws","labels_url":"https://api.github.com/repos/garyb/purescript-quickcheck-laws/issues/23/labels{/name}","comments_url":"https://api.github.com/repos/garyb/purescript-quickcheck-laws/issues/23/comments","events_url":"https://api.github.com/repos/garyb/purescript-quickcheck-laws/issues/23/events","html_url":"https://github.com/garyb/purescript-quickcheck-laws/pull/23","id":188749015,"number":23,"title":"Add checks for Enum","user":{"login":"jacereda","id":4195919,"avatar_url":"https://avatars.githubusercontent.com/u/4195919?v=3","gravatar_id":"","url":"https://api.github.com/users/jacereda","html_url":"https://github.com/jacereda","followers_url":"https://api.github.com/users/jacereda/followers","following_url":"https://api.github.com/users/jacereda/following{/other_user}","gists_url":"https://api.github.com/users/jacereda/gists{/gist_id}","starred_url":"https://api.github.com/users/jacereda/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacereda/subscriptions","organizations_url":"https://api.github.com/users/jacereda/orgs","repos_url":"https://api.github.com/users/jacereda/repos","events_url":"https://api.github.com/users/jacereda/events{/privacy}","received_events_url":"https://api.github.com/users/jacereda/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":10,"created_at":"2016-11-11T12:22:12Z","updated_at":"2016-11-13T14:02:25Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/garyb/purescript-quickcheck-laws/pulls/23","html_url":"https://github.com/garyb/purescript-quickcheck-laws/pull/23","diff_url":"https://github.com/garyb/purescript-quickcheck-laws/pull/23.diff","patch_url":"https://github.com/garyb/purescript-quickcheck-laws/pull/23.patch"},"body":"Again, names are intentionally ugly to ensure someone suggests better ones ;)\r\n"},"comment":{"url":"https://api.github.com/repos/garyb/purescript-quickcheck-laws/issues/comments/260188054","html_url":"https://github.com/garyb/purescript-quickcheck-laws/pull/23#issuecomment-260188054","issue_url":"https://api.github.com/repos/garyb/purescript-quickcheck-laws/issues/23","id":260188054,"user":{"login":"hdgarrood","id":1270186,"avatar_url":"https://avatars.githubusercontent.com/u/1270186?v=3","gravatar_id":"","url":"https://api.github.com/users/hdgarrood","html_url":"https://github.com/hdgarrood","followers_url":"https://api.github.com/users/hdgarrood/followers","following_url":"https://api.github.com/users/hdgarrood/following{/other_user}","gists_url":"https://api.github.com/users/hdgarrood/gists{/gist_id}","starred_url":"https://api.github.com/users/hdgarrood/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hdgarrood/subscriptions","organizations_url":"https://api.github.com/users/hdgarrood/orgs","repos_url":"https://api.github.com/users/hdgarrood/repos","events_url":"https://api.github.com/users/hdgarrood/events{/privacy}","received_events_url":"https://api.github.com/users/hdgarrood/received_events","type":"User","site_admin":false},"created_at":"2016-11-13T14:02:25Z","updated_at":"2016-11-13T14:02:25Z","body":"Yeah, I agree with @garyb, that's not what an enumeration is in my mind. In my mind an enumeration of a set X is a bijection from the natural numbers to X (or perhaps, instead of the whole set of natural numbers, you might have a finite subset of the natural numbers of the form {1,2,3,...n} for some fixed number n). In that sense, `toEnum` and `fromEnum` are this bijection and its inverse. So imo `toEnum` shouldn't skip over any numbers, either. (In fact, should we have `toEnum bottom == 1` as a law?)\r\n\r\nYou can certainly create an ADT for codecs like that, and so of course you'll need functions to attempt conversions to and from the numeric representation that libavcodec uses, but I don't think these functions should live inside the `BoundedEnum` typeclass."}}
{"actor":{"display_login":"hdgarrood"}}