{"action":"created","issue":{"url":"https://api.github.com/repos/slamdata/purescript-halogen/issues/189","labels_url":"https://api.github.com/repos/slamdata/purescript-halogen/issues/189/labels{/name}","comments_url":"https://api.github.com/repos/slamdata/purescript-halogen/issues/189/comments","events_url":"https://api.github.com/repos/slamdata/purescript-halogen/issues/189/events","html_url":"https://github.com/slamdata/purescript-halogen/pull/189","id":111271260,"number":189,"title":"Remove unnecessary `p`","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},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":4,"created_at":"2015-10-13T21:07:08Z","updated_at":"2015-10-14T20:17:54Z","closed_at":"2015-10-14T20:17:54Z","pull_request":{"url":"https://api.github.com/repos/slamdata/purescript-halogen/pulls/189","html_url":"https://github.com/slamdata/purescript-halogen/pull/189","diff_url":"https://github.com/slamdata/purescript-halogen/pull/189.diff","patch_url":"https://github.com/slamdata/purescript-halogen/pull/189.patch"},"body":"@jonsterling Here's the removal of the slot type I mentioned that can only be `p` or `Void`.\r\n\r\nCleans up the types a bit, but means I had to introduce `parentComponent` and `parentComponent'` to make the types work... kinda. `component'` can construct any kind of component, but by using the other 3 varieties you get better assistance when it comes to type errors.\r\n\r\nAnother thought I did consider is doing away with all the varieties and not even distinguishing between peeking and non-peeking components, but instead provide a helper `nopeek = const (pure unit)`. I'm not sure which approach is better."},"comment":{"url":"https://api.github.com/repos/slamdata/purescript-halogen/issues/comments/148183101","html_url":"https://github.com/slamdata/purescript-halogen/pull/189#issuecomment-148183101","issue_url":"https://api.github.com/repos/slamdata/purescript-halogen/issues/189","id":148183101,"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":"2015-10-14T20:17:54Z","updated_at":"2015-10-14T20:17:54Z","body":"Closing in favour of #191"}}