{"action":"created","issue":{"url":"https://api.github.com/repos/rust-lang/rust/issues/27739","repository_url":"https://api.github.com/repos/rust-lang/rust","labels_url":"https://api.github.com/repos/rust-lang/rust/issues/27739/labels{/name}","comments_url":"https://api.github.com/repos/rust-lang/rust/issues/27739/comments","events_url":"https://api.github.com/repos/rust-lang/rust/issues/27739/events","html_url":"https://github.com/rust-lang/rust/issues/27739","id":100604317,"number":27739,"title":"Tracking issue for `Zero`/`One`/`iter_arith` stabilization","user":{"login":"aturon","id":709807,"avatar_url":"https://avatars.githubusercontent.com/u/709807?v=3","gravatar_id":"","url":"https://api.github.com/users/aturon","html_url":"https://github.com/aturon","followers_url":"https://api.github.com/users/aturon/followers","following_url":"https://api.github.com/users/aturon/following{/other_user}","gists_url":"https://api.github.com/users/aturon/gists{/gist_id}","starred_url":"https://api.github.com/users/aturon/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aturon/subscriptions","organizations_url":"https://api.github.com/users/aturon/orgs","repos_url":"https://api.github.com/users/aturon/repos","events_url":"https://api.github.com/users/aturon/events{/privacy}","received_events_url":"https://api.github.com/users/aturon/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/rust-lang/rust/labels/B-unstable","name":"B-unstable","color":"e102d8"},{"url":"https://api.github.com/repos/rust-lang/rust/labels/T-libs","name":"T-libs","color":"bfd4f2"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":35,"created_at":"2015-08-12T18:23:24Z","updated_at":"2016-05-14T21:28:59Z","closed_at":null,"body":"We currently have `Zero` and `One` traits that are meant to work with `Add` and `Mul` and support iterator operations like `sum`, as well as the current `step_by` API.\r\n\r\nIt would be good to have a more comprehensive vision for this kind of trait before stabilization; an RFC would be ideal."},"comment":{"url":"https://api.github.com/repos/rust-lang/rust/issues/comments/219252588","html_url":"https://github.com/rust-lang/rust/issues/27739#issuecomment-219252588","issue_url":"https://api.github.com/repos/rust-lang/rust/issues/27739","id":219252588,"user":{"login":"Jimmio92","id":332675,"avatar_url":"https://avatars.githubusercontent.com/u/332675?v=3","gravatar_id":"","url":"https://api.github.com/users/Jimmio92","html_url":"https://github.com/Jimmio92","followers_url":"https://api.github.com/users/Jimmio92/followers","following_url":"https://api.github.com/users/Jimmio92/following{/other_user}","gists_url":"https://api.github.com/users/Jimmio92/gists{/gist_id}","starred_url":"https://api.github.com/users/Jimmio92/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Jimmio92/subscriptions","organizations_url":"https://api.github.com/users/Jimmio92/orgs","repos_url":"https://api.github.com/users/Jimmio92/repos","events_url":"https://api.github.com/users/Jimmio92/events{/privacy}","received_events_url":"https://api.github.com/users/Jimmio92/received_events","type":"User","site_admin":false},"created_at":"2016-05-14T21:28:59Z","updated_at":"2016-05-14T21:28:59Z","body":"I used this to allow returning unit direction vectors from functions in my vec module. zero(), one(), left(), right(), up(), down(), forward(), backward() wouldn't be possible without these traits. (Maybe if casting to T from 0 and 1 was allowed, these wouldn't be necessary in my use case?)"}}