{"action":"created","issue":{"url":"https://api.github.com/repos/racket/typed-racket/issues/256","labels_url":"https://api.github.com/repos/racket/typed-racket/issues/256/labels{/name}","comments_url":"https://api.github.com/repos/racket/typed-racket/issues/256/comments","events_url":"https://api.github.com/repos/racket/typed-racket/issues/256/events","html_url":"https://github.com/racket/typed-racket/pull/256","id":118540638,"number":256,"title":"Remove many uses of dict functions for performance","user":{"login":"takikawa","id":64192,"avatar_url":"https://avatars.githubusercontent.com/u/64192?v=3","gravatar_id":"","url":"https://api.github.com/users/takikawa","html_url":"https://github.com/takikawa","followers_url":"https://api.github.com/users/takikawa/followers","following_url":"https://api.github.com/users/takikawa/following{/other_user}","gists_url":"https://api.github.com/users/takikawa/gists{/gist_id}","starred_url":"https://api.github.com/users/takikawa/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/takikawa/subscriptions","organizations_url":"https://api.github.com/users/takikawa/orgs","repos_url":"https://api.github.com/users/takikawa/repos","events_url":"https://api.github.com/users/takikawa/events{/privacy}","received_events_url":"https://api.github.com/users/takikawa/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2015-11-24T06:23:28Z","updated_at":"2015-11-25T16:44:34Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/racket/typed-racket/pulls/256","html_url":"https://github.com/racket/typed-racket/pull/256","diff_url":"https://github.com/racket/typed-racket/pull/256.diff","patch_url":"https://github.com/racket/typed-racket/pull/256.patch"},"body":"This seems to cut about 10% of the runtime of new-metrics.rkt and about 4% of the compile-time of the math library. It doesn't get rid of all uses of dict functions because some are difficult to remove due to actual genericity (and I also didn't bother with most of the uses in class-related code yet because those aren't exercised by most programs).\r\n\r\nCan someone else check if they get similar speedups?"},"comment":{"url":"https://api.github.com/repos/racket/typed-racket/issues/comments/159667596","html_url":"https://github.com/racket/typed-racket/pull/256#issuecomment-159667596","issue_url":"https://api.github.com/repos/racket/typed-racket/issues/256","id":159667596,"user":{"login":"stamourv","id":854429,"avatar_url":"https://avatars.githubusercontent.com/u/854429?v=3","gravatar_id":"","url":"https://api.github.com/users/stamourv","html_url":"https://github.com/stamourv","followers_url":"https://api.github.com/users/stamourv/followers","following_url":"https://api.github.com/users/stamourv/following{/other_user}","gists_url":"https://api.github.com/users/stamourv/gists{/gist_id}","starred_url":"https://api.github.com/users/stamourv/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/stamourv/subscriptions","organizations_url":"https://api.github.com/users/stamourv/orgs","repos_url":"https://api.github.com/users/stamourv/repos","events_url":"https://api.github.com/users/stamourv/events{/privacy}","received_events_url":"https://api.github.com/users/stamourv/received_events","type":"User","site_admin":false},"created_at":"2015-11-25T16:44:34Z","updated_at":"2015-11-25T16:44:34Z","body":"Specializing to hash and id-table operations is fine to me, but I'm less convinced by the alist op changes. I'm not a fan of all those `match-define`s to take pairs apart, and `assoc` is stone age technology which makes the code less clear.\r\n\r\nIf we can get decent speedups with just the former, that sounds good. Otherwise, I don't know whether the speedups @andmkent reports justify the readability loss."}}