{"action":"created","issue":{"url":"https://api.github.com/repos/monix/monix/issues/452","repository_url":"https://api.github.com/repos/monix/monix","labels_url":"https://api.github.com/repos/monix/monix/issues/452/labels{/name}","comments_url":"https://api.github.com/repos/monix/monix/issues/452/comments","events_url":"https://api.github.com/repos/monix/monix/issues/452/events","html_url":"https://github.com/monix/monix/issues/452","id":269613292,"number":452,"title":"Improve performance of Monix Task, relative to competition","user":{"login":"alexandru","id":11753,"avatar_url":"https://avatars2.githubusercontent.com/u/11753?v=4","gravatar_id":"","url":"https://api.github.com/users/alexandru","html_url":"https://github.com/alexandru","followers_url":"https://api.github.com/users/alexandru/followers","following_url":"https://api.github.com/users/alexandru/following{/other_user}","gists_url":"https://api.github.com/users/alexandru/gists{/gist_id}","starred_url":"https://api.github.com/users/alexandru/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alexandru/subscriptions","organizations_url":"https://api.github.com/users/alexandru/orgs","repos_url":"https://api.github.com/users/alexandru/repos","events_url":"https://api.github.com/users/alexandru/events{/privacy}","received_events_url":"https://api.github.com/users/alexandru/received_events","type":"User","site_admin":false},"labels":[{"id":73565125,"url":"https://api.github.com/repos/monix/monix/labels/bug","name":"bug","color":"fc2929","default":true}],"state":"open","locked":false,"assignee":{"login":"alexandru","id":11753,"avatar_url":"https://avatars2.githubusercontent.com/u/11753?v=4","gravatar_id":"","url":"https://api.github.com/users/alexandru","html_url":"https://github.com/alexandru","followers_url":"https://api.github.com/users/alexandru/followers","following_url":"https://api.github.com/users/alexandru/following{/other_user}","gists_url":"https://api.github.com/users/alexandru/gists{/gist_id}","starred_url":"https://api.github.com/users/alexandru/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alexandru/subscriptions","organizations_url":"https://api.github.com/users/alexandru/orgs","repos_url":"https://api.github.com/users/alexandru/repos","events_url":"https://api.github.com/users/alexandru/events{/privacy}","received_events_url":"https://api.github.com/users/alexandru/received_events","type":"User","site_admin":false},"assignees":[{"login":"alexandru","id":11753,"avatar_url":"https://avatars2.githubusercontent.com/u/11753?v=4","gravatar_id":"","url":"https://api.github.com/users/alexandru","html_url":"https://github.com/alexandru","followers_url":"https://api.github.com/users/alexandru/followers","following_url":"https://api.github.com/users/alexandru/following{/other_user}","gists_url":"https://api.github.com/users/alexandru/gists{/gist_id}","starred_url":"https://api.github.com/users/alexandru/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alexandru/subscriptions","organizations_url":"https://api.github.com/users/alexandru/orgs","repos_url":"https://api.github.com/users/alexandru/repos","events_url":"https://api.github.com/users/alexandru/events{/privacy}","received_events_url":"https://api.github.com/users/alexandru/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/monix/monix/milestones/15","html_url":"https://github.com/monix/monix/milestone/15","labels_url":"https://api.github.com/repos/monix/monix/milestones/15/labels","id":2377366,"number":15,"title":"3.0.0","description":null,"creator":{"login":"alexandru","id":11753,"avatar_url":"https://avatars2.githubusercontent.com/u/11753?v=4","gravatar_id":"","url":"https://api.github.com/users/alexandru","html_url":"https://github.com/alexandru","followers_url":"https://api.github.com/users/alexandru/followers","following_url":"https://api.github.com/users/alexandru/following{/other_user}","gists_url":"https://api.github.com/users/alexandru/gists{/gist_id}","starred_url":"https://api.github.com/users/alexandru/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alexandru/subscriptions","organizations_url":"https://api.github.com/users/alexandru/orgs","repos_url":"https://api.github.com/users/alexandru/repos","events_url":"https://api.github.com/users/alexandru/events{/privacy}","received_events_url":"https://api.github.com/users/alexandru/received_events","type":"User","site_admin":false},"open_issues":3,"closed_issues":6,"state":"open","created_at":"2017-03-10T13:21:39Z","updated_at":"2017-10-30T14:10:29Z","due_on":null,"closed_at":null},"comments":5,"created_at":"2017-10-30T14:10:08Z","updated_at":"2017-10-31T07:44:40Z","closed_at":null,"author_association":"OWNER","body":"@jdegoes is presenting the following slide at [scala.io](https://scala.io):\r\n\r\n![performance](https://user-images.githubusercontent.com/11753/32175131-a29049d2-bd8c-11e7-9d05-7c245a59b430.jpg)\r\n\r\nI'm happy about the progress that Scalaz is making, but for Monix second place in unacceptable.\r\nSo another round of optimizations is coming.\r\n\r\n#gameon"},"comment":{"url":"https://api.github.com/repos/monix/monix/issues/comments/340684839","html_url":"https://github.com/monix/monix/issues/452#issuecomment-340684839","issue_url":"https://api.github.com/repos/monix/monix/issues/452","id":340684839,"user":{"login":"jdegoes","id":156745,"avatar_url":"https://avatars1.githubusercontent.com/u/156745?v=4","gravatar_id":"","url":"https://api.github.com/users/jdegoes","html_url":"https://github.com/jdegoes","followers_url":"https://api.github.com/users/jdegoes/followers","following_url":"https://api.github.com/users/jdegoes/following{/other_user}","gists_url":"https://api.github.com/users/jdegoes/gists{/gist_id}","starred_url":"https://api.github.com/users/jdegoes/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jdegoes/subscriptions","organizations_url":"https://api.github.com/users/jdegoes/orgs","repos_url":"https://api.github.com/users/jdegoes/repos","events_url":"https://api.github.com/users/jdegoes/events{/privacy}","received_events_url":"https://api.github.com/users/jdegoes/received_events","type":"User","site_admin":false},"created_at":"2017-10-31T07:44:40Z","updated_at":"2017-10-31T07:44:40Z","author_association":"NONE","body":"@fwbrasil \r\n\r\n> We've been porting many of the traneio future optimizations into the Twitter Future, so maybe it's worth comparing to it\r\n\r\nI include Scala's `Future` mainly for reference, because so many programmers use it. Due to its effectful nature, `Future` is not suitable for functional programmers. The other two implementations, Cats IO and and Monix Task, are both viable candidates for functional programmers.\r\n\r\n> Why only publish on Nov 16th? Isn't this work a OSS branch that people could collaborate on? To be honest, I find it unfair to publish benchmark results without providing the source code.\r\n\r\nAs an open source contributor yourself, please remember that it's my own personal code, which I work on unpaid and in my spare time between my day job, family, and non-profit work, and I will publish it when I have planned to publish it, as part of a talk I am doing November 16. \r\n\r\nI don't owe anyone the benchmarks at any point in time–let alone right now. My time belongs to exactly one person: me. I do, however, appreciate your interest and hope you find the code useful, when I release it as planned on November 16th.\r\n\r\n@alexandru \r\n\r\n> The execution model of a Future data type is usually a little different than that of a Task / IO data type, because with a Future the flatMap chains aren't that long, whereas with a Task / IO you end up composing whole programs with its combinators and then trigger the execution (ideally) only once.\r\n\r\n💯 \r\n\r\nThe flatMap benchmark in Trane also looks like it's testing a linear chain of futures, not a recursively-built (branching) tree as would be common in a functional program."}}
{"actor":{"display_login":"jdegoes"}}