{"action":"created","issue":{"url":"https://api.github.com/repos/ramda/ramda/issues/2123","repository_url":"https://api.github.com/repos/ramda/ramda","labels_url":"https://api.github.com/repos/ramda/ramda/issues/2123/labels{/name}","comments_url":"https://api.github.com/repos/ramda/ramda/issues/2123/comments","events_url":"https://api.github.com/repos/ramda/ramda/issues/2123/events","html_url":"https://github.com/ramda/ramda/issues/2123","id":213277525,"number":2123,"title":"Does transduce take its arguments in the wrong order?","user":{"login":"TheLudd","id":557295,"avatar_url":"https://avatars3.githubusercontent.com/u/557295?v=3","gravatar_id":"","url":"https://api.github.com/users/TheLudd","html_url":"https://github.com/TheLudd","followers_url":"https://api.github.com/users/TheLudd/followers","following_url":"https://api.github.com/users/TheLudd/following{/other_user}","gists_url":"https://api.github.com/users/TheLudd/gists{/gist_id}","starred_url":"https://api.github.com/users/TheLudd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/TheLudd/subscriptions","organizations_url":"https://api.github.com/users/TheLudd/orgs","repos_url":"https://api.github.com/users/TheLudd/repos","events_url":"https://api.github.com/users/TheLudd/events{/privacy}","received_events_url":"https://api.github.com/users/TheLudd/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2017-03-10T08:38:38Z","updated_at":"2017-03-12T01:23:18Z","closed_at":null,"body":"I realized something yesterday about `transduce` that has bothered me for a long time. Every time I use it I pretty much make a custom transducer function but the accumulator function and the initial argument pretty much only varies in two ways. \r\n\r\n * Case 1: I build up a list of elements where xf is `flip(append)` and acc is `[]`\r\n * Case 2: I build up a sum where xf is `add` and acc is `0`\r\n\r\nBecause of this, it seems a better argument order would be `transduce(xf, acc, transducer, list)`. With this I could create \r\n * `transduceToList = transduce(flip(append), [])` \r\n * `transduceToSum = transduce(add, 0)` \r\n\r\nI suspect that other uses of `transduce` would follow the same pattern.\r\n\r\nI realize that `transduce` is not a ramda invention and that it probably follows a format from somewhere else. I just wanted to bring this up for discussion. "},"comment":{"url":"https://api.github.com/repos/ramda/ramda/issues/comments/285913929","html_url":"https://github.com/ramda/ramda/issues/2123#issuecomment-285913929","issue_url":"https://api.github.com/repos/ramda/ramda/issues/2123","id":285913929,"user":{"login":"CrossEye","id":151263,"avatar_url":"https://avatars3.githubusercontent.com/u/151263?v=3","gravatar_id":"","url":"https://api.github.com/users/CrossEye","html_url":"https://github.com/CrossEye","followers_url":"https://api.github.com/users/CrossEye/followers","following_url":"https://api.github.com/users/CrossEye/following{/other_user}","gists_url":"https://api.github.com/users/CrossEye/gists{/gist_id}","starred_url":"https://api.github.com/users/CrossEye/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/CrossEye/subscriptions","organizations_url":"https://api.github.com/users/CrossEye/orgs","repos_url":"https://api.github.com/users/CrossEye/repos","events_url":"https://api.github.com/users/CrossEye/events{/privacy}","received_events_url":"https://api.github.com/users/CrossEye/received_events","type":"User","site_admin":false},"created_at":"2017-03-12T01:23:18Z","updated_at":"2017-03-12T01:23:18Z","body":"This makes sense to me.  I don't think the prior art should dictate our parameter order.\r\n\r\nOf course this would be a major breaking change."}}
{"actor":{"display_login":"CrossEye"}}