{"action":"created","issue":{"url":"https://api.github.com/repos/purescript/purescript-enums/issues/11","repository_url":"https://api.github.com/repos/purescript/purescript-enums","labels_url":"https://api.github.com/repos/purescript/purescript-enums/issues/11/labels{/name}","comments_url":"https://api.github.com/repos/purescript/purescript-enums/issues/11/comments","events_url":"https://api.github.com/repos/purescript/purescript-enums/issues/11/events","html_url":"https://github.com/purescript/purescript-enums/pull/11","id":104994426,"number":11,"title":"Separate Enum/Finite classes, fix bugs in the Maybe instance, and add Unit instance","user":{"login":"jbrownson","id":808113,"avatar_url":"https://avatars.githubusercontent.com/u/808113?v=3","gravatar_id":"","url":"https://api.github.com/users/jbrownson","html_url":"https://github.com/jbrownson","followers_url":"https://api.github.com/users/jbrownson/followers","following_url":"https://api.github.com/users/jbrownson/following{/other_user}","gists_url":"https://api.github.com/users/jbrownson/gists{/gist_id}","starred_url":"https://api.github.com/users/jbrownson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jbrownson/subscriptions","organizations_url":"https://api.github.com/users/jbrownson/orgs","repos_url":"https://api.github.com/users/jbrownson/repos","events_url":"https://api.github.com/users/jbrownson/events{/privacy}","received_events_url":"https://api.github.com/users/jbrownson/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":28,"created_at":"2015-09-05T01:19:58Z","updated_at":"2016-04-02T11:10:49Z","closed_at":"2016-04-02T11:10:46Z","pull_request":{"url":"https://api.github.com/repos/purescript/purescript-enums/pulls/11","html_url":"https://github.com/purescript/purescript-enums/pull/11","diff_url":"https://github.com/purescript/purescript-enums/pull/11.diff","patch_url":"https://github.com/purescript/purescript-enums/pull/11.patch"},"body":"I went back and forth a bit on if to/fromEnum should be in Finite, but I think it makes sense in Enum and make the code nicer.\r\n\r\nI found a couple of bugs in the Maybe instance and threw in a Unit instance.\r\n\r\nA neat little detail was for the Tuple instance one of the sides had to be Finite, but I could leave the other Enum for the Enum instance :).\r\n\r\nFor the Maybe instance I had to require Finite on \"a\" for the Enum instance, but really all it needs is bottom, made me think it might be interesting to split Bounded up or something, but maybe that's taking it too far.\r\n\r\nIf this is on the right track I'd like to make it work for Listy things, but I realized I think I can make it more general, but I'm not entirely sure how, maybe using Traversable/Foldable/Unfoldable? I don't have much experience w/ those classes."},"comment":{"url":"https://api.github.com/repos/purescript/purescript-enums/issues/comments/204695868","html_url":"https://github.com/purescript/purescript-enums/pull/11#issuecomment-204695868","issue_url":"https://api.github.com/repos/purescript/purescript-enums/issues/11","id":204695868,"user":{"login":"garyb","id":693642,"avatar_url":"https://avatars.githubusercontent.com/u/693642?v=3","gravatar_id":"","url":"https://api.github.com/users/garyb","html_url":"https://github.com/garyb","followers_url":"https://api.github.com/users/garyb/followers","following_url":"https://api.github.com/users/garyb/following{/other_user}","gists_url":"https://api.github.com/users/garyb/gists{/gist_id}","starred_url":"https://api.github.com/users/garyb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/garyb/subscriptions","organizations_url":"https://api.github.com/users/garyb/orgs","repos_url":"https://api.github.com/users/garyb/repos","events_url":"https://api.github.com/users/garyb/events{/privacy}","received_events_url":"https://api.github.com/users/garyb/received_events","type":"User","site_admin":false},"created_at":"2016-04-02T11:10:49Z","updated_at":"2016-04-02T11:10:49Z","body":"Thanks very much for working on this! Sorry it took so long to actually get to this point."}}