{"action":"opened","issue":{"url":"https://api.github.com/repos/ELENA-LANG/elena-lang/issues/158","labels_url":"https://api.github.com/repos/ELENA-LANG/elena-lang/issues/158/labels{/name}","comments_url":"https://api.github.com/repos/ELENA-LANG/elena-lang/issues/158/comments","events_url":"https://api.github.com/repos/ELENA-LANG/elena-lang/issues/158/events","html_url":"https://github.com/ELENA-LANG/elena-lang/issues/158","id":115833093,"number":158,"title":"\"n := n + k\" optimization","user":{"login":"arakov","id":5677187,"avatar_url":"https://avatars.githubusercontent.com/u/5677187?v=3","gravatar_id":"","url":"https://api.github.com/users/arakov","html_url":"https://github.com/arakov","followers_url":"https://api.github.com/users/arakov/followers","following_url":"https://api.github.com/users/arakov/following{/other_user}","gists_url":"https://api.github.com/users/arakov/gists{/gist_id}","starred_url":"https://api.github.com/users/arakov/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arakov/subscriptions","organizations_url":"https://api.github.com/users/arakov/orgs","repos_url":"https://api.github.com/users/arakov/repos","events_url":"https://api.github.com/users/arakov/events{/privacy}","received_events_url":"https://api.github.com/users/arakov/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/ELENA-LANG/elena-lang/labels/Compiler","name":"Compiler","color":"5319e7"},{"url":"https://api.github.com/repos/ELENA-LANG/elena-lang/labels/optimization","name":"optimization","color":"fbca04"},{"url":"https://api.github.com/repos/ELENA-LANG/elena-lang/labels/refactoring","name":"refactoring","color":"0052cc"}],"state":"open","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/ELENA-LANG/elena-lang/milestones/1","html_url":"https://github.com/ELENA-LANG/elena-lang/milestones/ELENA%202.0.0","labels_url":"https://api.github.com/repos/ELENA-LANG/elena-lang/milestones/1/labels","id":1108152,"number":1,"title":"ELENA 2.0.0","description":"* basic linux version (only console)\r\n* lib30 api documentation\r\n* declarative gui description\r\n* migrate existing GUI samples to lib30\r\n* migrate upndown to lib30\r\n* eldoc\r\n* sockets\r\n* gcx: multi-theading beta (standalone, vm client, gui, console)\r\n* gui / console vm clients\r\n* gui vm / mt\r\n","creator":{"login":"arakov","id":5677187,"avatar_url":"https://avatars.githubusercontent.com/u/5677187?v=3","gravatar_id":"","url":"https://api.github.com/users/arakov","html_url":"https://github.com/arakov","followers_url":"https://api.github.com/users/arakov/followers","following_url":"https://api.github.com/users/arakov/following{/other_user}","gists_url":"https://api.github.com/users/arakov/gists{/gist_id}","starred_url":"https://api.github.com/users/arakov/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arakov/subscriptions","organizations_url":"https://api.github.com/users/arakov/orgs","repos_url":"https://api.github.com/users/arakov/repos","events_url":"https://api.github.com/users/arakov/events{/privacy}","received_events_url":"https://api.github.com/users/arakov/received_events","type":"User","site_admin":false},"open_issues":76,"closed_issues":14,"state":"open","created_at":"2015-05-13T08:10:05Z","updated_at":"2015-11-09T08:54:31Z","due_on":"2016-06-12T22:00:00Z","closed_at":null},"comments":0,"created_at":"2015-11-09T08:54:31Z","updated_at":"2015-11-09T08:54:31Z","closed_at":null,"body":"After compiler redux\r\n\r\n    n := n + k\r\n\r\nis compiled as\r\n\r\n    assigning\r\n    |\r\n    +--- local address\r\n    |\r\n    +--- assigning\r\n          | \r\n          +--- local address\r\n          |\r\n          +--- int operator : add\r\n               |\r\n               +--- local : n\r\n               |\r\n               +--- local : k\r\n\r\nsecond assigning (and stack allocation) should be omitted"}}