{"action":"created","issue":{"url":"https://api.github.com/repos/jruby/jruby/issues/2845","labels_url":"https://api.github.com/repos/jruby/jruby/issues/2845/labels{/name}","comments_url":"https://api.github.com/repos/jruby/jruby/issues/2845/comments","events_url":"https://api.github.com/repos/jruby/jruby/issues/2845/events","html_url":"https://github.com/jruby/jruby/pull/2845","id":69145832,"number":2845,"title":"[Truffle] On demand freeze node","user":{"login":"eregon","id":168854,"avatar_url":"https://avatars.githubusercontent.com/u/168854?v=3","gravatar_id":"","url":"https://api.github.com/users/eregon","html_url":"https://github.com/eregon","followers_url":"https://api.github.com/users/eregon/followers","following_url":"https://api.github.com/users/eregon/following{/other_user}","gists_url":"https://api.github.com/users/eregon/gists{/gist_id}","starred_url":"https://api.github.com/users/eregon/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/eregon/subscriptions","organizations_url":"https://api.github.com/users/eregon/orgs","repos_url":"https://api.github.com/users/eregon/repos","events_url":"https://api.github.com/users/eregon/events{/privacy}","received_events_url":"https://api.github.com/users/eregon/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/jruby/jruby/labels/truffle","name":"truffle","color":"fbca04"}],"state":"open","locked":false,"assignee":{"login":"eregon","id":168854,"avatar_url":"https://avatars.githubusercontent.com/u/168854?v=3","gravatar_id":"","url":"https://api.github.com/users/eregon","html_url":"https://github.com/eregon","followers_url":"https://api.github.com/users/eregon/followers","following_url":"https://api.github.com/users/eregon/following{/other_user}","gists_url":"https://api.github.com/users/eregon/gists{/gist_id}","starred_url":"https://api.github.com/users/eregon/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/eregon/subscriptions","organizations_url":"https://api.github.com/users/eregon/orgs","repos_url":"https://api.github.com/users/eregon/repos","events_url":"https://api.github.com/users/eregon/events{/privacy}","received_events_url":"https://api.github.com/users/eregon/received_events","type":"User","site_admin":false},"milestone":{"url":"https://api.github.com/repos/jruby/jruby/milestones/34","html_url":"https://github.com/jruby/jruby/milestones/truffle-dev","labels_url":"https://api.github.com/repos/jruby/jruby/milestones/34/labels","id":1009959,"number":34,"title":"truffle-dev","description":null,"creator":{"login":"chrisseaton","id":341094,"avatar_url":"https://avatars.githubusercontent.com/u/341094?v=3","gravatar_id":"","url":"https://api.github.com/users/chrisseaton","html_url":"https://github.com/chrisseaton","followers_url":"https://api.github.com/users/chrisseaton/followers","following_url":"https://api.github.com/users/chrisseaton/following{/other_user}","gists_url":"https://api.github.com/users/chrisseaton/gists{/gist_id}","starred_url":"https://api.github.com/users/chrisseaton/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chrisseaton/subscriptions","organizations_url":"https://api.github.com/users/chrisseaton/orgs","repos_url":"https://api.github.com/users/chrisseaton/repos","events_url":"https://api.github.com/users/chrisseaton/events{/privacy}","received_events_url":"https://api.github.com/users/chrisseaton/received_events","type":"User","site_admin":false},"open_issues":9,"closed_issues":80,"state":"open","created_at":"2015-03-06T21:20:23Z","updated_at":"2015-04-17T14:15:44Z","due_on":null,"closed_at":null},"comments":5,"created_at":"2015-04-17T14:09:20Z","updated_at":"2015-04-17T14:40:03Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/jruby/jruby/pulls/2845","html_url":"https://github.com/jruby/jruby/pull/2845","diff_url":"https://github.com/jruby/jruby/pull/2845.diff","patch_url":"https://github.com/jruby/jruby/pull/2845.patch"},"body":"@chrisseaton @nirvdrum What do you think?\r\nSounds very expensive?\r\n\r\nThe parent is needed otherwise replace cannot work correctly.\r\nOne alternative I see is to have a uber DebugNode stored in RubyContext with all subnodes we need. Of course that's profile pollution, but is it worse than duplicating logic and doing all these instanceof?"},"comment":{"url":"https://api.github.com/repos/jruby/jruby/issues/comments/93998969","html_url":"https://github.com/jruby/jruby/pull/2845#issuecomment-93998969","issue_url":"https://api.github.com/repos/jruby/jruby/issues/2845","id":93998969,"user":{"login":"chrisseaton","id":341094,"avatar_url":"https://avatars.githubusercontent.com/u/341094?v=3","gravatar_id":"","url":"https://api.github.com/users/chrisseaton","html_url":"https://github.com/chrisseaton","followers_url":"https://api.github.com/users/chrisseaton/followers","following_url":"https://api.github.com/users/chrisseaton/following{/other_user}","gists_url":"https://api.github.com/users/chrisseaton/gists{/gist_id}","starred_url":"https://api.github.com/users/chrisseaton/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chrisseaton/subscriptions","organizations_url":"https://api.github.com/users/chrisseaton/orgs","repos_url":"https://api.github.com/users/chrisseaton/repos","events_url":"https://api.github.com/users/chrisseaton/events{/privacy}","received_events_url":"https://api.github.com/users/chrisseaton/received_events","type":"User","site_admin":false},"created_at":"2015-04-17T14:40:03Z","updated_at":"2015-04-17T14:40:03Z","body":"Could we also do `ruby(\"o.freeze\", \"o\", o)` - that will be even slower but simpler."}}