{"action":"created","issue":{"url":"https://api.github.com/repos/racket/typed-racket/issues/446","repository_url":"https://api.github.com/repos/racket/typed-racket","labels_url":"https://api.github.com/repos/racket/typed-racket/issues/446/labels{/name}","comments_url":"https://api.github.com/repos/racket/typed-racket/issues/446/comments","events_url":"https://api.github.com/repos/racket/typed-racket/issues/446/events","html_url":"https://github.com/racket/typed-racket/pull/446","id":184662305,"number":446,"title":"remove contract overhead from static-contract code","user":{"login":"pnwamk","id":3662058,"avatar_url":"https://avatars.githubusercontent.com/u/3662058?v=3","gravatar_id":"","url":"https://api.github.com/users/pnwamk","html_url":"https://github.com/pnwamk","followers_url":"https://api.github.com/users/pnwamk/followers","following_url":"https://api.github.com/users/pnwamk/following{/other_user}","gists_url":"https://api.github.com/users/pnwamk/gists{/gist_id}","starred_url":"https://api.github.com/users/pnwamk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pnwamk/subscriptions","organizations_url":"https://api.github.com/users/pnwamk/orgs","repos_url":"https://api.github.com/users/pnwamk/repos","events_url":"https://api.github.com/users/pnwamk/events{/privacy}","received_events_url":"https://api.github.com/users/pnwamk/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2016-10-22T23:57:35Z","updated_at":"2016-10-25T18:25:28Z","closed_at":"2016-10-23T18:48:22Z","pull_request":{"url":"https://api.github.com/repos/racket/typed-racket/pulls/446","html_url":"https://github.com/racket/typed-racket/pull/446","diff_url":"https://github.com/racket/typed-racket/pull/446.diff","patch_url":"https://github.com/racket/typed-racket/pull/446.patch"},"body":"This PR changes numerous ```(provide (contract-out ...))``` instances to ```(provide/cond-contract ...)``` and removes some unneeded generic ```dict``` operations with more specific functions for performance sake.\r\n\r\nReducing this contract overhead in the ```static-contract``` directory and especially changing the particularly hot ```dict-set``` instances to ```free-id-table-set``` calls from ```syntax/private/id-table``` made _huge_ differences when type checking some parts of the Schml compiler (see this standalone [file](https://github.com/pnwamk/tr-performance/blob/master/schml-interp-casts-help.rkt))."},"comment":{"url":"https://api.github.com/repos/racket/typed-racket/issues/comments/256125555","html_url":"https://github.com/racket/typed-racket/pull/446#issuecomment-256125555","issue_url":"https://api.github.com/repos/racket/typed-racket/issues/446","id":256125555,"user":{"login":"rfindler","id":399024,"avatar_url":"https://avatars.githubusercontent.com/u/399024?v=3","gravatar_id":"","url":"https://api.github.com/users/rfindler","html_url":"https://github.com/rfindler","followers_url":"https://api.github.com/users/rfindler/followers","following_url":"https://api.github.com/users/rfindler/following{/other_user}","gists_url":"https://api.github.com/users/rfindler/gists{/gist_id}","starred_url":"https://api.github.com/users/rfindler/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rfindler/subscriptions","organizations_url":"https://api.github.com/users/rfindler/orgs","repos_url":"https://api.github.com/users/rfindler/repos","events_url":"https://api.github.com/users/rfindler/events{/privacy}","received_events_url":"https://api.github.com/users/rfindler/received_events","type":"User","site_admin":false},"created_at":"2016-10-25T18:25:28Z","updated_at":"2016-10-25T18:25:28Z","body":"The dict contracts are a lot more expensive than others because of the\ndependency. Did you try with contracts that were based on -> instead of ->i\n?\n"}}
{"actor":{"display_login":"rfindler"}}