{"action":"created","issue":{"url":"https://api.github.com/repos/Mokosha/netwire-input/issues/3","labels_url":"https://api.github.com/repos/Mokosha/netwire-input/issues/3/labels{/name}","comments_url":"https://api.github.com/repos/Mokosha/netwire-input/issues/3/comments","events_url":"https://api.github.com/repos/Mokosha/netwire-input/issues/3/events","html_url":"https://github.com/Mokosha/netwire-input/pull/3","id":95951618,"number":3,"title":"Add wires not relying on inhibition, clarify documentation for 'debounced' wires","user":{"login":"bch29","id":9095737,"avatar_url":"https://avatars.githubusercontent.com/u/9095737?v=3","gravatar_id":"","url":"https://api.github.com/users/bch29","html_url":"https://github.com/bch29","followers_url":"https://api.github.com/users/bch29/followers","following_url":"https://api.github.com/users/bch29/following{/other_user}","gists_url":"https://api.github.com/users/bch29/gists{/gist_id}","starred_url":"https://api.github.com/users/bch29/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bch29/subscriptions","organizations_url":"https://api.github.com/users/bch29/orgs","repos_url":"https://api.github.com/users/bch29/repos","events_url":"https://api.github.com/users/bch29/events{/privacy}","received_events_url":"https://api.github.com/users/bch29/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":9,"created_at":"2015-07-19T21:49:59Z","updated_at":"2015-07-21T16:15:00Z","closed_at":"2015-07-21T15:48:27Z","pull_request":{"url":"https://api.github.com/repos/Mokosha/netwire-input/pulls/3","html_url":"https://github.com/Mokosha/netwire-input/pull/3","diff_url":"https://github.com/Mokosha/netwire-input/pull/3.diff","patch_url":"https://github.com/Mokosha/netwire-input/pull/3.patch"},"body":"Note that I redefined the `isMousePressed` and `isKeyPressed` wires you implemented to not rely on the inhibition-based one and thus not require the `Monoid e` constraint (and it's also probably a tiny bit more efficient to do it directly like this; I'm not sure how well GHC is able to inline/optimise arrows). \r\n\r\nI also clarified the documentation about the debouncing functions, which will hopefully prevent people having the same confusion I did. The `mouseBecamePressed` etc wires that I've added are also now operationally different to the debouncing ones: they don't affect the state at all themselves, they just fire an event whenever a mouse button/key is seen to be pressed or released.\r\n\r\nI still think that adding instances for `MonadMouse`/`Keyboard` to everything from `mtl` would be very beneficial, but I've held off on that as you haven't yet addressed my point about anything that uses this library necessarily depending on `mtl` anyway."},"comment":{"url":"https://api.github.com/repos/Mokosha/netwire-input/issues/comments/123388774","html_url":"https://github.com/Mokosha/netwire-input/pull/3#issuecomment-123388774","issue_url":"https://api.github.com/repos/Mokosha/netwire-input/issues/3","id":123388774,"user":{"login":"Mokosha","id":885364,"avatar_url":"https://avatars.githubusercontent.com/u/885364?v=3","gravatar_id":"","url":"https://api.github.com/users/Mokosha","html_url":"https://github.com/Mokosha","followers_url":"https://api.github.com/users/Mokosha/followers","following_url":"https://api.github.com/users/Mokosha/following{/other_user}","gists_url":"https://api.github.com/users/Mokosha/gists{/gist_id}","starred_url":"https://api.github.com/users/Mokosha/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Mokosha/subscriptions","organizations_url":"https://api.github.com/users/Mokosha/orgs","repos_url":"https://api.github.com/users/Mokosha/repos","events_url":"https://api.github.com/users/Mokosha/events{/privacy}","received_events_url":"https://api.github.com/users/Mokosha/received_events","type":"User","site_admin":false},"created_at":"2015-07-21T16:15:00Z","updated_at":"2015-07-21T16:15:00Z","body":"So the issue I have with it is still maintenance -- I don't like having to track the version of netwire's `transformers` because then this package could break without me having changed anything. I'm not convinced that this is the standard way to do things -- but I am convincable. :P If you find a mainstream package that brings in the `mtl`/`transformers` dependencies for the sole purpose of adding these instances I will consider adding them as well. "}}