{"action":"closed","number":588,"pull_request":{"url":"https://api.github.com/repos/ambiata/icicle/pulls/588","id":128736877,"html_url":"https://github.com/ambiata/icicle/pull/588","diff_url":"https://github.com/ambiata/icicle/pull/588.diff","patch_url":"https://github.com/ambiata/icicle/pull/588.patch","issue_url":"https://api.github.com/repos/ambiata/icicle/issues/588","number":588,"state":"closed","locked":false,"title":"Typechecking changes prior to NaN","user":{"login":"amosr","id":964498,"avatar_url":"https://avatars0.githubusercontent.com/u/964498?v=3","gravatar_id":"","url":"https://api.github.com/users/amosr","html_url":"https://github.com/amosr","followers_url":"https://api.github.com/users/amosr/followers","following_url":"https://api.github.com/users/amosr/following{/other_user}","gists_url":"https://api.github.com/users/amosr/gists{/gist_id}","starred_url":"https://api.github.com/users/amosr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/amosr/subscriptions","organizations_url":"https://api.github.com/users/amosr/orgs","repos_url":"https://api.github.com/users/amosr/repos","events_url":"https://api.github.com/users/amosr/events{/privacy}","received_events_url":"https://api.github.com/users/amosr/received_events","type":"User","site_admin":false},"body":"Application: when result and argument both have mode, but expected argument type\r\nis pure, join the result and argument modes rather than requiring\r\nequality.  New result is the result of join.\r\n\r\nRemove Cons Hack for fold: this was prematurely committing to Definitely, when it shouldn't have.\r\n\r\nPerform top-level constraint discharge before checking for leftover constraints. This finds constraints like `a = PossibilityJoin b c` and rewrites `a = b = c`. This is necessary because conversion to Core doesn't deal with polymorphic modes, so if one is a non-variable mode this will solve it.\r\n\r\nCase: return single substitution, and apply substitution to preceding alternative. When you have two alternatives, you recurse into the first alternative, then the second. If you learn something from the second alternative, you need to go back and apply that to the first alternative.\r\n\r\nDefaults: default to Unit, Pure or Definitely based on kind. Find all the types in the program and decompose them into temporality, possibility and data. Then find the free variables of the decomposed and choose a sensible default. Before, any type variable possibilities would have been substituted to Unit. (But this probably wasn't happening often because of the Cons Hack for folds would change make it concrete)\r\n\r\nFunction: don't \"clean up\" the constraints on function types. Nobody looks at the function types, so it doesn't matter if they're ugly. And the \"cleaning up\" was over-specific.\r\n\r\n! @jystic @tranma \n/jury approved @jystic","created_at":"2017-07-04T07:00:56Z","updated_at":"2017-07-06T06:47:39Z","closed_at":"2017-07-06T06:47:39Z","merged_at":"2017-07-06T06:47:39Z","merge_commit_sha":"2aa78dea83eab2a95a8bfff5b3bfcd19c4978354","assignee":{"login":"jystic","id":134805,"avatar_url":"https://avatars2.githubusercontent.com/u/134805?v=3","gravatar_id":"","url":"https://api.github.com/users/jystic","html_url":"https://github.com/jystic","followers_url":"https://api.github.com/users/jystic/followers","following_url":"https://api.github.com/users/jystic/following{/other_user}","gists_url":"https://api.github.com/users/jystic/gists{/gist_id}","starred_url":"https://api.github.com/users/jystic/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jystic/subscriptions","organizations_url":"https://api.github.com/users/jystic/orgs","repos_url":"https://api.github.com/users/jystic/repos","events_url":"https://api.github.com/users/jystic/events{/privacy}","received_events_url":"https://api.github.com/users/jystic/received_events","type":"User","site_admin":false},"assignees":[{"login":"jystic","id":134805,"avatar_url":"https://avatars2.githubusercontent.com/u/134805?v=3","gravatar_id":"","url":"https://api.github.com/users/jystic","html_url":"https://github.com/jystic","followers_url":"https://api.github.com/users/jystic/followers","following_url":"https://api.github.com/users/jystic/following{/other_user}","gists_url":"https://api.github.com/users/jystic/gists{/gist_id}","starred_url":"https://api.github.com/users/jystic/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jystic/subscriptions","organizations_url":"https://api.github.com/users/jystic/orgs","repos_url":"https://api.github.com/users/jystic/repos","events_url":"https://api.github.com/users/jystic/events{/privacy}","received_events_url":"https://api.github.com/users/jystic/received_events","type":"User","site_admin":false},{"login":"tranma","id":235039,"avatar_url":"https://avatars3.githubusercontent.com/u/235039?v=3","gravatar_id":"","url":"https://api.github.com/users/tranma","html_url":"https://github.com/tranma","followers_url":"https://api.github.com/users/tranma/followers","following_url":"https://api.github.com/users/tranma/following{/other_user}","gists_url":"https://api.github.com/users/tranma/gists{/gist_id}","starred_url":"https://api.github.com/users/tranma/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tranma/subscriptions","organizations_url":"https://api.github.com/users/tranma/orgs","repos_url":"https://api.github.com/users/tranma/repos","events_url":"https://api.github.com/users/tranma/events{/privacy}","received_events_url":"https://api.github.com/users/tranma/received_events","type":"User","site_admin":false}],"requested_reviewers":[],"milestone":null,"commits_url":"https://api.github.com/repos/ambiata/icicle/pulls/588/commits","review_comments_url":"https://api.github.com/repos/ambiata/icicle/pulls/588/comments","review_comment_url":"https://api.github.com/repos/ambiata/icicle/pulls/comments{/number}","comments_url":"https://api.github.com/repos/ambiata/icicle/issues/588/comments","statuses_url":"https://api.github.com/repos/ambiata/icicle/statuses/83f9b18b98e5490e685a6cf35569a4b9d2503861","head":{"label":"ambiata:topic/tc-fun","ref":"topic/tc-fun","sha":"83f9b18b98e5490e685a6cf35569a4b9d2503861","user":{"login":"ambiata","id":1691023,"avatar_url":"https://avatars1.githubusercontent.com/u/1691023?v=3","gravatar_id":"","url":"https://api.github.com/users/ambiata","html_url":"https://github.com/ambiata","followers_url":"https://api.github.com/users/ambiata/followers","following_url":"https://api.github.com/users/ambiata/following{/other_user}","gists_url":"https://api.github.com/users/ambiata/gists{/gist_id}","starred_url":"https://api.github.com/users/ambiata/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ambiata/subscriptions","organizations_url":"https://api.github.com/users/ambiata/orgs","repos_url":"https://api.github.com/users/ambiata/repos","events_url":"https://api.github.com/users/ambiata/events{/privacy}","received_events_url":"https://api.github.com/users/ambiata/received_events","type":"Organization","site_admin":false},"repo":{"id":33146693,"name":"icicle","full_name":"ambiata/icicle","owner":{"login":"ambiata","id":1691023,"avatar_url":"https://avatars1.githubusercontent.com/u/1691023?v=3","gravatar_id":"","url":"https://api.github.com/users/ambiata","html_url":"https://github.com/ambiata","followers_url":"https://api.github.com/users/ambiata/followers","following_url":"https://api.github.com/users/ambiata/following{/other_user}","gists_url":"https://api.github.com/users/ambiata/gists{/gist_id}","starred_url":"https://api.github.com/users/ambiata/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ambiata/subscriptions","organizations_url":"https://api.github.com/users/ambiata/orgs","repos_url":"https://api.github.com/users/ambiata/repos","events_url":"https://api.github.com/users/ambiata/events{/privacy}","received_events_url":"https://api.github.com/users/ambiata/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/ambiata/icicle","description":"A streaming query language.","fork":false,"url":"https://api.github.com/repos/ambiata/icicle","forks_url":"https://api.github.com/repos/ambiata/icicle/forks","keys_url":"https://api.github.com/repos/ambiata/icicle/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ambiata/icicle/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ambiata/icicle/teams","hooks_url":"https://api.github.com/repos/ambiata/icicle/hooks","issue_events_url":"https://api.github.com/repos/ambiata/icicle/issues/events{/number}","events_url":"https://api.github.com/repos/ambiata/icicle/events","assignees_url":"https://api.github.com/repos/ambiata/icicle/assignees{/user}","branches_url":"https://api.github.com/repos/ambiata/icicle/branches{/branch}","tags_url":"https://api.github.com/repos/ambiata/icicle/tags","blobs_url":"https://api.github.com/repos/ambiata/icicle/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ambiata/icicle/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ambiata/icicle/git/refs{/sha}","trees_url":"https://api.github.com/repos/ambiata/icicle/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ambiata/icicle/statuses/{sha}","languages_url":"https://api.github.com/repos/ambiata/icicle/languages","stargazers_url":"https://api.github.com/repos/ambiata/icicle/stargazers","contributors_url":"https://api.github.com/repos/ambiata/icicle/contributors","subscribers_url":"https://api.github.com/repos/ambiata/icicle/subscribers","subscription_url":"https://api.github.com/repos/ambiata/icicle/subscription","commits_url":"https://api.github.com/repos/ambiata/icicle/commits{/sha}","git_commits_url":"https://api.github.com/repos/ambiata/icicle/git/commits{/sha}","comments_url":"https://api.github.com/repos/ambiata/icicle/comments{/number}","issue_comment_url":"https://api.github.com/repos/ambiata/icicle/issues/comments{/number}","contents_url":"https://api.github.com/repos/ambiata/icicle/contents/{+path}","compare_url":"https://api.github.com/repos/ambiata/icicle/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ambiata/icicle/merges","archive_url":"https://api.github.com/repos/ambiata/icicle/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ambiata/icicle/downloads","issues_url":"https://api.github.com/repos/ambiata/icicle/issues{/number}","pulls_url":"https://api.github.com/repos/ambiata/icicle/pulls{/number}","milestones_url":"https://api.github.com/repos/ambiata/icicle/milestones{/number}","notifications_url":"https://api.github.com/repos/ambiata/icicle/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ambiata/icicle/labels{/name}","releases_url":"https://api.github.com/repos/ambiata/icicle/releases{/id}","deployments_url":"https://api.github.com/repos/ambiata/icicle/deployments","created_at":"2015-03-30T20:37:02Z","updated_at":"2017-06-16T10:35:29Z","pushed_at":"2017-07-06T06:47:39Z","git_url":"git://github.com/ambiata/icicle.git","ssh_url":"git@github.com:ambiata/icicle.git","clone_url":"https://github.com/ambiata/icicle.git","svn_url":"https://github.com/ambiata/icicle","homepage":null,"size":13547,"stargazers_count":32,"watchers_count":32,"language":"Haskell","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":3,"mirror_url":null,"open_issues_count":43,"forks":3,"open_issues":43,"watchers":32,"default_branch":"master"}},"base":{"label":"ambiata:master","ref":"master","sha":"a9fa86c498b189179f0b21d522bd8ad590ecb38b","user":{"login":"ambiata","id":1691023,"avatar_url":"https://avatars1.githubusercontent.com/u/1691023?v=3","gravatar_id":"","url":"https://api.github.com/users/ambiata","html_url":"https://github.com/ambiata","followers_url":"https://api.github.com/users/ambiata/followers","following_url":"https://api.github.com/users/ambiata/following{/other_user}","gists_url":"https://api.github.com/users/ambiata/gists{/gist_id}","starred_url":"https://api.github.com/users/ambiata/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ambiata/subscriptions","organizations_url":"https://api.github.com/users/ambiata/orgs","repos_url":"https://api.github.com/users/ambiata/repos","events_url":"https://api.github.com/users/ambiata/events{/privacy}","received_events_url":"https://api.github.com/users/ambiata/received_events","type":"Organization","site_admin":false},"repo":{"id":33146693,"name":"icicle","full_name":"ambiata/icicle","owner":{"login":"ambiata","id":1691023,"avatar_url":"https://avatars1.githubusercontent.com/u/1691023?v=3","gravatar_id":"","url":"https://api.github.com/users/ambiata","html_url":"https://github.com/ambiata","followers_url":"https://api.github.com/users/ambiata/followers","following_url":"https://api.github.com/users/ambiata/following{/other_user}","gists_url":"https://api.github.com/users/ambiata/gists{/gist_id}","starred_url":"https://api.github.com/users/ambiata/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ambiata/subscriptions","organizations_url":"https://api.github.com/users/ambiata/orgs","repos_url":"https://api.github.com/users/ambiata/repos","events_url":"https://api.github.com/users/ambiata/events{/privacy}","received_events_url":"https://api.github.com/users/ambiata/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/ambiata/icicle","description":"A streaming query language.","fork":false,"url":"https://api.github.com/repos/ambiata/icicle","forks_url":"https://api.github.com/repos/ambiata/icicle/forks","keys_url":"https://api.github.com/repos/ambiata/icicle/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ambiata/icicle/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ambiata/icicle/teams","hooks_url":"https://api.github.com/repos/ambiata/icicle/hooks","issue_events_url":"https://api.github.com/repos/ambiata/icicle/issues/events{/number}","events_url":"https://api.github.com/repos/ambiata/icicle/events","assignees_url":"https://api.github.com/repos/ambiata/icicle/assignees{/user}","branches_url":"https://api.github.com/repos/ambiata/icicle/branches{/branch}","tags_url":"https://api.github.com/repos/ambiata/icicle/tags","blobs_url":"https://api.github.com/repos/ambiata/icicle/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ambiata/icicle/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ambiata/icicle/git/refs{/sha}","trees_url":"https://api.github.com/repos/ambiata/icicle/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ambiata/icicle/statuses/{sha}","languages_url":"https://api.github.com/repos/ambiata/icicle/languages","stargazers_url":"https://api.github.com/repos/ambiata/icicle/stargazers","contributors_url":"https://api.github.com/repos/ambiata/icicle/contributors","subscribers_url":"https://api.github.com/repos/ambiata/icicle/subscribers","subscription_url":"https://api.github.com/repos/ambiata/icicle/subscription","commits_url":"https://api.github.com/repos/ambiata/icicle/commits{/sha}","git_commits_url":"https://api.github.com/repos/ambiata/icicle/git/commits{/sha}","comments_url":"https://api.github.com/repos/ambiata/icicle/comments{/number}","issue_comment_url":"https://api.github.com/repos/ambiata/icicle/issues/comments{/number}","contents_url":"https://api.github.com/repos/ambiata/icicle/contents/{+path}","compare_url":"https://api.github.com/repos/ambiata/icicle/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ambiata/icicle/merges","archive_url":"https://api.github.com/repos/ambiata/icicle/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ambiata/icicle/downloads","issues_url":"https://api.github.com/repos/ambiata/icicle/issues{/number}","pulls_url":"https://api.github.com/repos/ambiata/icicle/pulls{/number}","milestones_url":"https://api.github.com/repos/ambiata/icicle/milestones{/number}","notifications_url":"https://api.github.com/repos/ambiata/icicle/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ambiata/icicle/labels{/name}","releases_url":"https://api.github.com/repos/ambiata/icicle/releases{/id}","deployments_url":"https://api.github.com/repos/ambiata/icicle/deployments","created_at":"2015-03-30T20:37:02Z","updated_at":"2017-06-16T10:35:29Z","pushed_at":"2017-07-06T06:47:39Z","git_url":"git://github.com/ambiata/icicle.git","ssh_url":"git@github.com:ambiata/icicle.git","clone_url":"https://github.com/ambiata/icicle.git","svn_url":"https://github.com/ambiata/icicle","homepage":null,"size":13547,"stargazers_count":32,"watchers_count":32,"language":"Haskell","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":3,"mirror_url":null,"open_issues_count":43,"forks":3,"open_issues":43,"watchers":32,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/ambiata/icicle/pulls/588"},"html":{"href":"https://github.com/ambiata/icicle/pull/588"},"issue":{"href":"https://api.github.com/repos/ambiata/icicle/issues/588"},"comments":{"href":"https://api.github.com/repos/ambiata/icicle/issues/588/comments"},"review_comments":{"href":"https://api.github.com/repos/ambiata/icicle/pulls/588/comments"},"review_comment":{"href":"https://api.github.com/repos/ambiata/icicle/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/ambiata/icicle/pulls/588/commits"},"statuses":{"href":"https://api.github.com/repos/ambiata/icicle/statuses/83f9b18b98e5490e685a6cf35569a4b9d2503861"}},"merged":true,"mergeable":null,"rebaseable":null,"mergeable_state":"unknown","merged_by":{"login":"amosr","id":964498,"avatar_url":"https://avatars0.githubusercontent.com/u/964498?v=3","gravatar_id":"","url":"https://api.github.com/users/amosr","html_url":"https://github.com/amosr","followers_url":"https://api.github.com/users/amosr/followers","following_url":"https://api.github.com/users/amosr/following{/other_user}","gists_url":"https://api.github.com/users/amosr/gists{/gist_id}","starred_url":"https://api.github.com/users/amosr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/amosr/subscriptions","organizations_url":"https://api.github.com/users/amosr/orgs","repos_url":"https://api.github.com/users/amosr/repos","events_url":"https://api.github.com/users/amosr/events{/privacy}","received_events_url":"https://api.github.com/users/amosr/received_events","type":"User","site_admin":false},"comments":2,"review_comments":0,"maintainer_can_modify":false,"commits":2,"additions":79,"deletions":85,"changed_files":2}}
{"actor":{"display_login":"amosr"}}