{"action":"created","issue":{"url":"https://api.github.com/repos/morepath/morepath/issues/448","repository_url":"https://api.github.com/repos/morepath/morepath","labels_url":"https://api.github.com/repos/morepath/morepath/issues/448/labels{/name}","comments_url":"https://api.github.com/repos/morepath/morepath/issues/448/comments","events_url":"https://api.github.com/repos/morepath/morepath/issues/448/events","html_url":"https://github.com/morepath/morepath/issues/448","id":156943648,"number":448,"title":"generic functions become app class methods","user":{"login":"faassen","id":327472,"avatar_url":"https://avatars.githubusercontent.com/u/327472?v=3","gravatar_id":"","url":"https://api.github.com/users/faassen","html_url":"https://github.com/faassen","followers_url":"https://api.github.com/users/faassen/followers","following_url":"https://api.github.com/users/faassen/following{/other_user}","gists_url":"https://api.github.com/users/faassen/gists{/gist_id}","starred_url":"https://api.github.com/users/faassen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/faassen/subscriptions","organizations_url":"https://api.github.com/users/faassen/orgs","repos_url":"https://api.github.com/users/faassen/repos","events_url":"https://api.github.com/users/faassen/events{/privacy}","received_events_url":"https://api.github.com/users/faassen/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/morepath/morepath/labels/enhancement","name":"enhancement","color":"84b6eb"},{"url":"https://api.github.com/repos/morepath/morepath/labels/idea","name":"idea","color":"f7c6c7"}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":47,"created_at":"2016-05-26T09:38:52Z","updated_at":"2016-09-05T10:45:26Z","closed_at":null,"body":"This is a big rather philosophical issues. Are generic functions in Morepath really actually special static methods on the app class? This because the implicit parameter for a generic function is always the app's lookup anyway. If we installed generic functions as static methods on the app class this implicitness would go away.\r\n\r\nTo make this smooth we probably would need to adjust Reg to have an awareness of an actual app class.\r\n\r\n@taschini what do you think?"},"comment":{"url":"https://api.github.com/repos/morepath/morepath/issues/comments/244717346","html_url":"https://github.com/morepath/morepath/issues/448#issuecomment-244717346","issue_url":"https://api.github.com/repos/morepath/morepath/issues/448","id":244717346,"user":{"login":"faassen","id":327472,"avatar_url":"https://avatars.githubusercontent.com/u/327472?v=3","gravatar_id":"","url":"https://api.github.com/users/faassen","html_url":"https://github.com/faassen","followers_url":"https://api.github.com/users/faassen/followers","following_url":"https://api.github.com/users/faassen/following{/other_user}","gists_url":"https://api.github.com/users/faassen/gists{/gist_id}","starred_url":"https://api.github.com/users/faassen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/faassen/subscriptions","organizations_url":"https://api.github.com/users/faassen/orgs","repos_url":"https://api.github.com/users/faassen/repos","events_url":"https://api.github.com/users/faassen/events{/privacy}","received_events_url":"https://api.github.com/users/faassen/received_events","type":"User","site_admin":false},"created_at":"2016-09-05T10:45:26Z","updated_at":"2016-09-05T10:45:26Z","body":"With @taschini's change to Reg's dispatch logic we get:\r\n\r\n```\r\n                ms     rps  tcalls  funcs\r\nmorepath      6402   15619     117     86\r\n```\r\n\r\nI tweaked parameter factory generation on Morepath too to avoid doing work when there are no parameters expected, which helps the benchmark a lot:\r\n\r\n```\r\n                ms     rps  tcalls  funcs\r\nmorepath      5456   18330     106     80\r\n```\r\n"}}
{"actor":{"display_login":"faassen"}}