{"action":"closed","number":3,"pull_request":{"url":"https://api.github.com/repos/mmmries/kalculator/pulls/3","id":183859730,"html_url":"https://github.com/mmmries/kalculator/pull/3","diff_url":"https://github.com/mmmries/kalculator/pull/3.diff","patch_url":"https://github.com/mmmries/kalculator/pull/3.patch","issue_url":"https://api.github.com/repos/mmmries/kalculator/issues/3","number":3,"state":"closed","locked":false,"title":"add a Kalculator::Formula to act as a memoized formula","user":{"login":"mmmries","id":80008,"avatar_url":"https://avatars3.githubusercontent.com/u/80008?v=4","gravatar_id":"","url":"https://api.github.com/users/mmmries","html_url":"https://github.com/mmmries","followers_url":"https://api.github.com/users/mmmries/followers","following_url":"https://api.github.com/users/mmmries/following{/other_user}","gists_url":"https://api.github.com/users/mmmries/gists{/gist_id}","starred_url":"https://api.github.com/users/mmmries/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mmmries/subscriptions","organizations_url":"https://api.github.com/users/mmmries/orgs","repos_url":"https://api.github.com/users/mmmries/repos","events_url":"https://api.github.com/users/mmmries/events{/privacy}","received_events_url":"https://api.github.com/users/mmmries/received_events","type":"User","site_admin":false},"body":"After having some discussions with other engineers I realized that the name `Kalculator` doesn't seem to fit when we have an object that has a memoized copy of a particular AST. This seems to be more like a single `Formula` that can be run with different values. The performance gains of having memoized formulas rather than just calling `Kalculator.evaluate` is still important for some of my use-cases, but the name `Kalculator::Formula` better fits the idea of what that object does.","created_at":"2018-04-24T20:48:06Z","updated_at":"2018-04-25T21:34:25Z","closed_at":"2018-04-25T21:34:25Z","merged_at":"2018-04-25T21:34:25Z","merge_commit_sha":"d5088488f266dc45df593e0b3521d36c89ee6280","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/mmmries/kalculator/pulls/3/commits","review_comments_url":"https://api.github.com/repos/mmmries/kalculator/pulls/3/comments","review_comment_url":"https://api.github.com/repos/mmmries/kalculator/pulls/comments{/number}","comments_url":"https://api.github.com/repos/mmmries/kalculator/issues/3/comments","statuses_url":"https://api.github.com/repos/mmmries/kalculator/statuses/4d0c902c2ed7e0083f1302cb39d8bb5a6ce26bad","head":{"label":"mmmries:formulas","ref":"formulas","sha":"4d0c902c2ed7e0083f1302cb39d8bb5a6ce26bad","user":{"login":"mmmries","id":80008,"avatar_url":"https://avatars3.githubusercontent.com/u/80008?v=4","gravatar_id":"","url":"https://api.github.com/users/mmmries","html_url":"https://github.com/mmmries","followers_url":"https://api.github.com/users/mmmries/followers","following_url":"https://api.github.com/users/mmmries/following{/other_user}","gists_url":"https://api.github.com/users/mmmries/gists{/gist_id}","starred_url":"https://api.github.com/users/mmmries/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mmmries/subscriptions","organizations_url":"https://api.github.com/users/mmmries/orgs","repos_url":"https://api.github.com/users/mmmries/repos","events_url":"https://api.github.com/users/mmmries/events{/privacy}","received_events_url":"https://api.github.com/users/mmmries/received_events","type":"User","site_admin":false},"repo":{"id":129288848,"name":"kalculator","full_name":"mmmries/kalculator","owner":{"login":"mmmries","id":80008,"avatar_url":"https://avatars3.githubusercontent.com/u/80008?v=4","gravatar_id":"","url":"https://api.github.com/users/mmmries","html_url":"https://github.com/mmmries","followers_url":"https://api.github.com/users/mmmries/followers","following_url":"https://api.github.com/users/mmmries/following{/other_user}","gists_url":"https://api.github.com/users/mmmries/gists{/gist_id}","starred_url":"https://api.github.com/users/mmmries/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mmmries/subscriptions","organizations_url":"https://api.github.com/users/mmmries/orgs","repos_url":"https://api.github.com/users/mmmries/repos","events_url":"https://api.github.com/users/mmmries/events{/privacy}","received_events_url":"https://api.github.com/users/mmmries/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/mmmries/kalculator","description":"A rubygem for evaluating mathematical and logical expression safely and quickly","fork":false,"url":"https://api.github.com/repos/mmmries/kalculator","forks_url":"https://api.github.com/repos/mmmries/kalculator/forks","keys_url":"https://api.github.com/repos/mmmries/kalculator/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mmmries/kalculator/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mmmries/kalculator/teams","hooks_url":"https://api.github.com/repos/mmmries/kalculator/hooks","issue_events_url":"https://api.github.com/repos/mmmries/kalculator/issues/events{/number}","events_url":"https://api.github.com/repos/mmmries/kalculator/events","assignees_url":"https://api.github.com/repos/mmmries/kalculator/assignees{/user}","branches_url":"https://api.github.com/repos/mmmries/kalculator/branches{/branch}","tags_url":"https://api.github.com/repos/mmmries/kalculator/tags","blobs_url":"https://api.github.com/repos/mmmries/kalculator/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mmmries/kalculator/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mmmries/kalculator/git/refs{/sha}","trees_url":"https://api.github.com/repos/mmmries/kalculator/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mmmries/kalculator/statuses/{sha}","languages_url":"https://api.github.com/repos/mmmries/kalculator/languages","stargazers_url":"https://api.github.com/repos/mmmries/kalculator/stargazers","contributors_url":"https://api.github.com/repos/mmmries/kalculator/contributors","subscribers_url":"https://api.github.com/repos/mmmries/kalculator/subscribers","subscription_url":"https://api.github.com/repos/mmmries/kalculator/subscription","commits_url":"https://api.github.com/repos/mmmries/kalculator/commits{/sha}","git_commits_url":"https://api.github.com/repos/mmmries/kalculator/git/commits{/sha}","comments_url":"https://api.github.com/repos/mmmries/kalculator/comments{/number}","issue_comment_url":"https://api.github.com/repos/mmmries/kalculator/issues/comments{/number}","contents_url":"https://api.github.com/repos/mmmries/kalculator/contents/{+path}","compare_url":"https://api.github.com/repos/mmmries/kalculator/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mmmries/kalculator/merges","archive_url":"https://api.github.com/repos/mmmries/kalculator/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mmmries/kalculator/downloads","issues_url":"https://api.github.com/repos/mmmries/kalculator/issues{/number}","pulls_url":"https://api.github.com/repos/mmmries/kalculator/pulls{/number}","milestones_url":"https://api.github.com/repos/mmmries/kalculator/milestones{/number}","notifications_url":"https://api.github.com/repos/mmmries/kalculator/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mmmries/kalculator/labels{/name}","releases_url":"https://api.github.com/repos/mmmries/kalculator/releases{/id}","deployments_url":"https://api.github.com/repos/mmmries/kalculator/deployments","created_at":"2018-04-12T17:34:41Z","updated_at":"2018-04-21T05:04:35Z","pushed_at":"2018-04-25T21:34:25Z","git_url":"git://github.com/mmmries/kalculator.git","ssh_url":"git@github.com:mmmries/kalculator.git","clone_url":"https://github.com/mmmries/kalculator.git","svn_url":"https://github.com/mmmries/kalculator","homepage":null,"size":42,"stargazers_count":1,"watchers_count":1,"language":"Ruby","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit"},"forks":0,"open_issues":0,"watchers":1,"default_branch":"master"}},"base":{"label":"mmmries:master","ref":"master","sha":"18f7b8631d03b4a165fddfd6ec9ddf83911c1744","user":{"login":"mmmries","id":80008,"avatar_url":"https://avatars3.githubusercontent.com/u/80008?v=4","gravatar_id":"","url":"https://api.github.com/users/mmmries","html_url":"https://github.com/mmmries","followers_url":"https://api.github.com/users/mmmries/followers","following_url":"https://api.github.com/users/mmmries/following{/other_user}","gists_url":"https://api.github.com/users/mmmries/gists{/gist_id}","starred_url":"https://api.github.com/users/mmmries/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mmmries/subscriptions","organizations_url":"https://api.github.com/users/mmmries/orgs","repos_url":"https://api.github.com/users/mmmries/repos","events_url":"https://api.github.com/users/mmmries/events{/privacy}","received_events_url":"https://api.github.com/users/mmmries/received_events","type":"User","site_admin":false},"repo":{"id":129288848,"name":"kalculator","full_name":"mmmries/kalculator","owner":{"login":"mmmries","id":80008,"avatar_url":"https://avatars3.githubusercontent.com/u/80008?v=4","gravatar_id":"","url":"https://api.github.com/users/mmmries","html_url":"https://github.com/mmmries","followers_url":"https://api.github.com/users/mmmries/followers","following_url":"https://api.github.com/users/mmmries/following{/other_user}","gists_url":"https://api.github.com/users/mmmries/gists{/gist_id}","starred_url":"https://api.github.com/users/mmmries/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mmmries/subscriptions","organizations_url":"https://api.github.com/users/mmmries/orgs","repos_url":"https://api.github.com/users/mmmries/repos","events_url":"https://api.github.com/users/mmmries/events{/privacy}","received_events_url":"https://api.github.com/users/mmmries/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/mmmries/kalculator","description":"A rubygem for evaluating mathematical and logical expression safely and quickly","fork":false,"url":"https://api.github.com/repos/mmmries/kalculator","forks_url":"https://api.github.com/repos/mmmries/kalculator/forks","keys_url":"https://api.github.com/repos/mmmries/kalculator/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mmmries/kalculator/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mmmries/kalculator/teams","hooks_url":"https://api.github.com/repos/mmmries/kalculator/hooks","issue_events_url":"https://api.github.com/repos/mmmries/kalculator/issues/events{/number}","events_url":"https://api.github.com/repos/mmmries/kalculator/events","assignees_url":"https://api.github.com/repos/mmmries/kalculator/assignees{/user}","branches_url":"https://api.github.com/repos/mmmries/kalculator/branches{/branch}","tags_url":"https://api.github.com/repos/mmmries/kalculator/tags","blobs_url":"https://api.github.com/repos/mmmries/kalculator/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mmmries/kalculator/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mmmries/kalculator/git/refs{/sha}","trees_url":"https://api.github.com/repos/mmmries/kalculator/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mmmries/kalculator/statuses/{sha}","languages_url":"https://api.github.com/repos/mmmries/kalculator/languages","stargazers_url":"https://api.github.com/repos/mmmries/kalculator/stargazers","contributors_url":"https://api.github.com/repos/mmmries/kalculator/contributors","subscribers_url":"https://api.github.com/repos/mmmries/kalculator/subscribers","subscription_url":"https://api.github.com/repos/mmmries/kalculator/subscription","commits_url":"https://api.github.com/repos/mmmries/kalculator/commits{/sha}","git_commits_url":"https://api.github.com/repos/mmmries/kalculator/git/commits{/sha}","comments_url":"https://api.github.com/repos/mmmries/kalculator/comments{/number}","issue_comment_url":"https://api.github.com/repos/mmmries/kalculator/issues/comments{/number}","contents_url":"https://api.github.com/repos/mmmries/kalculator/contents/{+path}","compare_url":"https://api.github.com/repos/mmmries/kalculator/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mmmries/kalculator/merges","archive_url":"https://api.github.com/repos/mmmries/kalculator/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mmmries/kalculator/downloads","issues_url":"https://api.github.com/repos/mmmries/kalculator/issues{/number}","pulls_url":"https://api.github.com/repos/mmmries/kalculator/pulls{/number}","milestones_url":"https://api.github.com/repos/mmmries/kalculator/milestones{/number}","notifications_url":"https://api.github.com/repos/mmmries/kalculator/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mmmries/kalculator/labels{/name}","releases_url":"https://api.github.com/repos/mmmries/kalculator/releases{/id}","deployments_url":"https://api.github.com/repos/mmmries/kalculator/deployments","created_at":"2018-04-12T17:34:41Z","updated_at":"2018-04-21T05:04:35Z","pushed_at":"2018-04-25T21:34:25Z","git_url":"git://github.com/mmmries/kalculator.git","ssh_url":"git@github.com:mmmries/kalculator.git","clone_url":"https://github.com/mmmries/kalculator.git","svn_url":"https://github.com/mmmries/kalculator","homepage":null,"size":42,"stargazers_count":1,"watchers_count":1,"language":"Ruby","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit"},"forks":0,"open_issues":0,"watchers":1,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/mmmries/kalculator/pulls/3"},"html":{"href":"https://github.com/mmmries/kalculator/pull/3"},"issue":{"href":"https://api.github.com/repos/mmmries/kalculator/issues/3"},"comments":{"href":"https://api.github.com/repos/mmmries/kalculator/issues/3/comments"},"review_comments":{"href":"https://api.github.com/repos/mmmries/kalculator/pulls/3/comments"},"review_comment":{"href":"https://api.github.com/repos/mmmries/kalculator/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/mmmries/kalculator/pulls/3/commits"},"statuses":{"href":"https://api.github.com/repos/mmmries/kalculator/statuses/4d0c902c2ed7e0083f1302cb39d8bb5a6ce26bad"}},"author_association":"OWNER","merged":true,"mergeable":null,"rebaseable":null,"mergeable_state":"unknown","merged_by":{"login":"mmmries","id":80008,"avatar_url":"https://avatars3.githubusercontent.com/u/80008?v=4","gravatar_id":"","url":"https://api.github.com/users/mmmries","html_url":"https://github.com/mmmries","followers_url":"https://api.github.com/users/mmmries/followers","following_url":"https://api.github.com/users/mmmries/following{/other_user}","gists_url":"https://api.github.com/users/mmmries/gists{/gist_id}","starred_url":"https://api.github.com/users/mmmries/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mmmries/subscriptions","organizations_url":"https://api.github.com/users/mmmries/orgs","repos_url":"https://api.github.com/users/mmmries/repos","events_url":"https://api.github.com/users/mmmries/events{/privacy}","received_events_url":"https://api.github.com/users/mmmries/received_events","type":"User","site_admin":false},"comments":0,"review_comments":0,"maintainer_can_modify":false,"commits":1,"additions":51,"deletions":33,"changed_files":6}}
{"actor":{"display_login":"mmmries"}}