{"action":"created","issue":{"url":"https://api.github.com/repos/hgrecco/pint/issues/220","labels_url":"https://api.github.com/repos/hgrecco/pint/issues/220/labels{/name}","comments_url":"https://api.github.com/repos/hgrecco/pint/issues/220/comments","events_url":"https://api.github.com/repos/hgrecco/pint/issues/220/events","html_url":"https://github.com/hgrecco/pint/issues/220","id":53657836,"number":220,"title":"Check the effect on making ParserHelper immutable on parsing performance","user":{"login":"hgrecco","id":278566,"avatar_url":"https://avatars.githubusercontent.com/u/278566?v=3","gravatar_id":"","url":"https://api.github.com/users/hgrecco","html_url":"https://github.com/hgrecco","followers_url":"https://api.github.com/users/hgrecco/followers","following_url":"https://api.github.com/users/hgrecco/following{/other_user}","gists_url":"https://api.github.com/users/hgrecco/gists{/gist_id}","starred_url":"https://api.github.com/users/hgrecco/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hgrecco/subscriptions","organizations_url":"https://api.github.com/users/hgrecco/orgs","repos_url":"https://api.github.com/users/hgrecco/repos","events_url":"https://api.github.com/users/hgrecco/events{/privacy}","received_events_url":"https://api.github.com/users/hgrecco/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2015-01-07T17:27:05Z","updated_at":"2015-01-07T22:06:37Z","closed_at":null,"body":"In #202, ParserHelper was changed to immutable (operations are not in place any more). Does this affect parsing performance?\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/hgrecco/pint/issues/comments/69101042","html_url":"https://github.com/hgrecco/pint/issues/220#issuecomment-69101042","issue_url":"https://api.github.com/repos/hgrecco/pint/issues/220","id":69101042,"user":{"login":"hgrecco","id":278566,"avatar_url":"https://avatars.githubusercontent.com/u/278566?v=3","gravatar_id":"","url":"https://api.github.com/users/hgrecco","html_url":"https://github.com/hgrecco","followers_url":"https://api.github.com/users/hgrecco/followers","following_url":"https://api.github.com/users/hgrecco/following{/other_user}","gists_url":"https://api.github.com/users/hgrecco/gists{/gist_id}","starred_url":"https://api.github.com/users/hgrecco/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hgrecco/subscriptions","organizations_url":"https://api.github.com/users/hgrecco/orgs","repos_url":"https://api.github.com/users/hgrecco/repos","events_url":"https://api.github.com/users/hgrecco/events{/privacy}","received_events_url":"https://api.github.com/users/hgrecco/received_events","type":"User","site_admin":false},"created_at":"2015-01-07T22:06:37Z","updated_at":"2015-01-07T22:06:37Z","body":"I will try to profile it. The ParserHelper works by transforming `meter / second` in `ParserHelper.from_word('meter') / ParserHelper.from_word('meter')`. I think that this is faster as the operations are in place as less object are created. The questions are:\r\n- How much faster (is it worth it?)\r\n- Now that you have clean up a lot the internals, we might avoid the ParserHelper from the cache and then make it them mutable will not be a problem.\r\n- Is it worth the effort as we want a better parser in the long run anyway?"}}