{"action":"opened","number":217,"pull_request":{"url":"https://api.github.com/repos/jonsterling/JonPRL/pulls/217","id":43411520,"html_url":"https://github.com/jonsterling/JonPRL/pull/217","diff_url":"https://github.com/jonsterling/JonPRL/pull/217.diff","patch_url":"https://github.com/jonsterling/JonPRL/pull/217.patch","issue_url":"https://api.github.com/repos/jonsterling/JonPRL/issues/217","number":217,"state":"open","locked":false,"title":"Made tactic definitions late-bind the world they use (closes #216)","user":{"login":"jozefg","id":814961,"avatar_url":"https://avatars.githubusercontent.com/u/814961?v=3","gravatar_id":"","url":"https://api.github.com/users/jozefg","html_url":"https://github.com/jozefg","followers_url":"https://api.github.com/users/jozefg/followers","following_url":"https://api.github.com/users/jozefg/following{/other_user}","gists_url":"https://api.github.com/users/jozefg/gists{/gist_id}","starred_url":"https://api.github.com/users/jozefg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jozefg/subscriptions","organizations_url":"https://api.github.com/users/jozefg/orgs","repos_url":"https://api.github.com/users/jozefg/repos","events_url":"https://api.github.com/users/jozefg/events{/privacy}","received_events_url":"https://api.github.com/users/jozefg/received_events","type":"User","site_admin":false},"body":"The way we fix this is by changing `Development` so that tactics are now a map from `world` to a `tactic`. This means that when we use them (`lookupTactic`) we actually apply them to the world we're currently working in.\r\n\r\nThis actually only really effects the logic in 2 places, where we're evaluating tactics and where we're looking them up. We had to introduce a proper data type for `world` though so that we could tie off some recursion. That's why this PR looks a little large.","created_at":"2015-08-26T14:54:43Z","updated_at":"2015-08-26T14:54:43Z","closed_at":null,"merged_at":null,"merge_commit_sha":null,"assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/jonsterling/JonPRL/pulls/217/commits","review_comments_url":"https://api.github.com/repos/jonsterling/JonPRL/pulls/217/comments","review_comment_url":"https://api.github.com/repos/jonsterling/JonPRL/pulls/comments{/number}","comments_url":"https://api.github.com/repos/jonsterling/JonPRL/issues/217/comments","statuses_url":"https://api.github.com/repos/jonsterling/JonPRL/statuses/0710963b5b52bbea77298829249342c254a77ada","head":{"label":"jozefg:late-binding-tac","ref":"late-binding-tac","sha":"0710963b5b52bbea77298829249342c254a77ada","user":{"login":"jozefg","id":814961,"avatar_url":"https://avatars.githubusercontent.com/u/814961?v=3","gravatar_id":"","url":"https://api.github.com/users/jozefg","html_url":"https://github.com/jozefg","followers_url":"https://api.github.com/users/jozefg/followers","following_url":"https://api.github.com/users/jozefg/following{/other_user}","gists_url":"https://api.github.com/users/jozefg/gists{/gist_id}","starred_url":"https://api.github.com/users/jozefg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jozefg/subscriptions","organizations_url":"https://api.github.com/users/jozefg/orgs","repos_url":"https://api.github.com/users/jozefg/repos","events_url":"https://api.github.com/users/jozefg/events{/privacy}","received_events_url":"https://api.github.com/users/jozefg/received_events","type":"User","site_admin":false},"repo":{"id":37701151,"name":"JonPRL","full_name":"jozefg/JonPRL","owner":{"login":"jozefg","id":814961,"avatar_url":"https://avatars.githubusercontent.com/u/814961?v=3","gravatar_id":"","url":"https://api.github.com/users/jozefg","html_url":"https://github.com/jozefg","followers_url":"https://api.github.com/users/jozefg/followers","following_url":"https://api.github.com/users/jozefg/following{/other_user}","gists_url":"https://api.github.com/users/jozefg/gists{/gist_id}","starred_url":"https://api.github.com/users/jozefg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jozefg/subscriptions","organizations_url":"https://api.github.com/users/jozefg/orgs","repos_url":"https://api.github.com/users/jozefg/repos","events_url":"https://api.github.com/users/jozefg/events{/privacy}","received_events_url":"https://api.github.com/users/jozefg/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jozefg/JonPRL","description":"An LCF-with-validation-style proof refinement logic based on realizability","fork":true,"url":"https://api.github.com/repos/jozefg/JonPRL","forks_url":"https://api.github.com/repos/jozefg/JonPRL/forks","keys_url":"https://api.github.com/repos/jozefg/JonPRL/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jozefg/JonPRL/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jozefg/JonPRL/teams","hooks_url":"https://api.github.com/repos/jozefg/JonPRL/hooks","issue_events_url":"https://api.github.com/repos/jozefg/JonPRL/issues/events{/number}","events_url":"https://api.github.com/repos/jozefg/JonPRL/events","assignees_url":"https://api.github.com/repos/jozefg/JonPRL/assignees{/user}","branches_url":"https://api.github.com/repos/jozefg/JonPRL/branches{/branch}","tags_url":"https://api.github.com/repos/jozefg/JonPRL/tags","blobs_url":"https://api.github.com/repos/jozefg/JonPRL/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jozefg/JonPRL/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jozefg/JonPRL/git/refs{/sha}","trees_url":"https://api.github.com/repos/jozefg/JonPRL/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jozefg/JonPRL/statuses/{sha}","languages_url":"https://api.github.com/repos/jozefg/JonPRL/languages","stargazers_url":"https://api.github.com/repos/jozefg/JonPRL/stargazers","contributors_url":"https://api.github.com/repos/jozefg/JonPRL/contributors","subscribers_url":"https://api.github.com/repos/jozefg/JonPRL/subscribers","subscription_url":"https://api.github.com/repos/jozefg/JonPRL/subscription","commits_url":"https://api.github.com/repos/jozefg/JonPRL/commits{/sha}","git_commits_url":"https://api.github.com/repos/jozefg/JonPRL/git/commits{/sha}","comments_url":"https://api.github.com/repos/jozefg/JonPRL/comments{/number}","issue_comment_url":"https://api.github.com/repos/jozefg/JonPRL/issues/comments{/number}","contents_url":"https://api.github.com/repos/jozefg/JonPRL/contents/{+path}","compare_url":"https://api.github.com/repos/jozefg/JonPRL/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jozefg/JonPRL/merges","archive_url":"https://api.github.com/repos/jozefg/JonPRL/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jozefg/JonPRL/downloads","issues_url":"https://api.github.com/repos/jozefg/JonPRL/issues{/number}","pulls_url":"https://api.github.com/repos/jozefg/JonPRL/pulls{/number}","milestones_url":"https://api.github.com/repos/jozefg/JonPRL/milestones{/number}","notifications_url":"https://api.github.com/repos/jozefg/JonPRL/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jozefg/JonPRL/labels{/name}","releases_url":"https://api.github.com/repos/jozefg/JonPRL/releases{/id}","created_at":"2015-06-19T04:16:19Z","updated_at":"2015-08-18T05:34:22Z","pushed_at":"2015-08-26T14:51:51Z","git_url":"git://github.com/jozefg/JonPRL.git","ssh_url":"git@github.com:jozefg/JonPRL.git","clone_url":"https://github.com/jozefg/JonPRL.git","svn_url":"https://github.com/jozefg/JonPRL","homepage":"","size":1590,"stargazers_count":2,"watchers_count":2,"language":"Standard ML","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":2,"default_branch":"master"}},"base":{"label":"jonsterling:master","ref":"master","sha":"c545519906cc49fa2354b00eeceed35443c915c9","user":{"login":"jonsterling","id":55057,"avatar_url":"https://avatars.githubusercontent.com/u/55057?v=3","gravatar_id":"","url":"https://api.github.com/users/jonsterling","html_url":"https://github.com/jonsterling","followers_url":"https://api.github.com/users/jonsterling/followers","following_url":"https://api.github.com/users/jonsterling/following{/other_user}","gists_url":"https://api.github.com/users/jonsterling/gists{/gist_id}","starred_url":"https://api.github.com/users/jonsterling/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jonsterling/subscriptions","organizations_url":"https://api.github.com/users/jonsterling/orgs","repos_url":"https://api.github.com/users/jonsterling/repos","events_url":"https://api.github.com/users/jonsterling/events{/privacy}","received_events_url":"https://api.github.com/users/jonsterling/received_events","type":"User","site_admin":false},"repo":{"id":34770887,"name":"JonPRL","full_name":"jonsterling/JonPRL","owner":{"login":"jonsterling","id":55057,"avatar_url":"https://avatars.githubusercontent.com/u/55057?v=3","gravatar_id":"","url":"https://api.github.com/users/jonsterling","html_url":"https://github.com/jonsterling","followers_url":"https://api.github.com/users/jonsterling/followers","following_url":"https://api.github.com/users/jonsterling/following{/other_user}","gists_url":"https://api.github.com/users/jonsterling/gists{/gist_id}","starred_url":"https://api.github.com/users/jonsterling/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jonsterling/subscriptions","organizations_url":"https://api.github.com/users/jonsterling/orgs","repos_url":"https://api.github.com/users/jonsterling/repos","events_url":"https://api.github.com/users/jonsterling/events{/privacy}","received_events_url":"https://api.github.com/users/jonsterling/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jonsterling/JonPRL","description":"An proof refinement logic for computational type theory based on Brouwer-realizability & meaning explanations. Inspired by Nuprl","fork":false,"url":"https://api.github.com/repos/jonsterling/JonPRL","forks_url":"https://api.github.com/repos/jonsterling/JonPRL/forks","keys_url":"https://api.github.com/repos/jonsterling/JonPRL/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jonsterling/JonPRL/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jonsterling/JonPRL/teams","hooks_url":"https://api.github.com/repos/jonsterling/JonPRL/hooks","issue_events_url":"https://api.github.com/repos/jonsterling/JonPRL/issues/events{/number}","events_url":"https://api.github.com/repos/jonsterling/JonPRL/events","assignees_url":"https://api.github.com/repos/jonsterling/JonPRL/assignees{/user}","branches_url":"https://api.github.com/repos/jonsterling/JonPRL/branches{/branch}","tags_url":"https://api.github.com/repos/jonsterling/JonPRL/tags","blobs_url":"https://api.github.com/repos/jonsterling/JonPRL/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jonsterling/JonPRL/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jonsterling/JonPRL/git/refs{/sha}","trees_url":"https://api.github.com/repos/jonsterling/JonPRL/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jonsterling/JonPRL/statuses/{sha}","languages_url":"https://api.github.com/repos/jonsterling/JonPRL/languages","stargazers_url":"https://api.github.com/repos/jonsterling/JonPRL/stargazers","contributors_url":"https://api.github.com/repos/jonsterling/JonPRL/contributors","subscribers_url":"https://api.github.com/repos/jonsterling/JonPRL/subscribers","subscription_url":"https://api.github.com/repos/jonsterling/JonPRL/subscription","commits_url":"https://api.github.com/repos/jonsterling/JonPRL/commits{/sha}","git_commits_url":"https://api.github.com/repos/jonsterling/JonPRL/git/commits{/sha}","comments_url":"https://api.github.com/repos/jonsterling/JonPRL/comments{/number}","issue_comment_url":"https://api.github.com/repos/jonsterling/JonPRL/issues/comments{/number}","contents_url":"https://api.github.com/repos/jonsterling/JonPRL/contents/{+path}","compare_url":"https://api.github.com/repos/jonsterling/JonPRL/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jonsterling/JonPRL/merges","archive_url":"https://api.github.com/repos/jonsterling/JonPRL/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jonsterling/JonPRL/downloads","issues_url":"https://api.github.com/repos/jonsterling/JonPRL/issues{/number}","pulls_url":"https://api.github.com/repos/jonsterling/JonPRL/pulls{/number}","milestones_url":"https://api.github.com/repos/jonsterling/JonPRL/milestones{/number}","notifications_url":"https://api.github.com/repos/jonsterling/JonPRL/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jonsterling/JonPRL/labels{/name}","releases_url":"https://api.github.com/repos/jonsterling/JonPRL/releases{/id}","created_at":"2015-04-29T03:42:25Z","updated_at":"2015-08-26T14:24:40Z","pushed_at":"2015-08-26T04:23:40Z","git_url":"git://github.com/jonsterling/JonPRL.git","ssh_url":"git@github.com:jonsterling/JonPRL.git","clone_url":"https://github.com/jonsterling/JonPRL.git","svn_url":"https://github.com/jonsterling/JonPRL","homepage":"http://www.jonprl.org","size":3676,"stargazers_count":56,"watchers_count":56,"language":"Standard ML","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":7,"mirror_url":null,"open_issues_count":29,"forks":7,"open_issues":29,"watchers":56,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/jonsterling/JonPRL/pulls/217"},"html":{"href":"https://github.com/jonsterling/JonPRL/pull/217"},"issue":{"href":"https://api.github.com/repos/jonsterling/JonPRL/issues/217"},"comments":{"href":"https://api.github.com/repos/jonsterling/JonPRL/issues/217/comments"},"review_comments":{"href":"https://api.github.com/repos/jonsterling/JonPRL/pulls/217/comments"},"review_comment":{"href":"https://api.github.com/repos/jonsterling/JonPRL/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/jonsterling/JonPRL/pulls/217/commits"},"statuses":{"href":"https://api.github.com/repos/jonsterling/JonPRL/statuses/0710963b5b52bbea77298829249342c254a77ada"}},"merged":false,"mergeable":null,"mergeable_state":"unknown","merged_by":null,"comments":0,"review_comments":0,"commits":1,"additions":73,"deletions":73,"changed_files":3}}