{"action":"created","issue":{"url":"https://api.github.com/repos/JuliaOpt/MathOptInterface.jl/issues/351","repository_url":"https://api.github.com/repos/JuliaOpt/MathOptInterface.jl","labels_url":"https://api.github.com/repos/JuliaOpt/MathOptInterface.jl/issues/351/labels{/name}","comments_url":"https://api.github.com/repos/JuliaOpt/MathOptInterface.jl/issues/351/comments","events_url":"https://api.github.com/repos/JuliaOpt/MathOptInterface.jl/issues/351/events","html_url":"https://github.com/JuliaOpt/MathOptInterface.jl/pull/351","id":320537827,"number":351,"title":"RFC/DNMY: redefine MOI functions to use arrays of structs instead of structs of arrays","user":{"login":"mlubin","id":1733683,"avatar_url":"https://avatars3.githubusercontent.com/u/1733683?v=4","gravatar_id":"","url":"https://api.github.com/users/mlubin","html_url":"https://github.com/mlubin","followers_url":"https://api.github.com/users/mlubin/followers","following_url":"https://api.github.com/users/mlubin/following{/other_user}","gists_url":"https://api.github.com/users/mlubin/gists{/gist_id}","starred_url":"https://api.github.com/users/mlubin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mlubin/subscriptions","organizations_url":"https://api.github.com/users/mlubin/orgs","repos_url":"https://api.github.com/users/mlubin/repos","events_url":"https://api.github.com/users/mlubin/events{/privacy}","received_events_url":"https://api.github.com/users/mlubin/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2018-05-05T20:07:57Z","updated_at":"2018-05-05T23:36:13Z","closed_at":null,"author_association":"OWNER","pull_request":{"url":"https://api.github.com/repos/JuliaOpt/MathOptInterface.jl/pulls/351","html_url":"https://github.com/JuliaOpt/MathOptInterface.jl/pull/351","diff_url":"https://github.com/JuliaOpt/MathOptInterface.jl/pull/351.diff","patch_url":"https://github.com/JuliaOpt/MathOptInterface.jl/pull/351.patch"},"body":"Closes #211 \r\n\r\nPlease comment and double check that this is what we want. Overall I think the new definitions:\r\n- are much clearer.\r\n- reflect better coding practices (no more need to verify that `length(indices) == length(coefficients)`).\r\n- could lead to faster code (by better cache performance when looping through terms).\r\n\r\nAfter an agreement on the new definitions, I'll need help updating *everything* (by PRs to this branch first, then in the solver wrappers). We can tag this as MOI 0.3.\r\n\r\n@tkoolen @odow @blegat @joaquimg @joehuchette @ccoffrin"},"comment":{"url":"https://api.github.com/repos/JuliaOpt/MathOptInterface.jl/issues/comments/386842420","html_url":"https://github.com/JuliaOpt/MathOptInterface.jl/pull/351#issuecomment-386842420","issue_url":"https://api.github.com/repos/JuliaOpt/MathOptInterface.jl/issues/351","id":386842420,"user":{"login":"tkoolen","id":2585880,"avatar_url":"https://avatars0.githubusercontent.com/u/2585880?v=4","gravatar_id":"","url":"https://api.github.com/users/tkoolen","html_url":"https://github.com/tkoolen","followers_url":"https://api.github.com/users/tkoolen/followers","following_url":"https://api.github.com/users/tkoolen/following{/other_user}","gists_url":"https://api.github.com/users/tkoolen/gists{/gist_id}","starred_url":"https://api.github.com/users/tkoolen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tkoolen/subscriptions","organizations_url":"https://api.github.com/users/tkoolen/orgs","repos_url":"https://api.github.com/users/tkoolen/repos","events_url":"https://api.github.com/users/tkoolen/events{/privacy}","received_events_url":"https://api.github.com/users/tkoolen/received_events","type":"User","site_admin":false},"created_at":"2018-05-05T23:36:13Z","updated_at":"2018-05-05T23:36:13Z","author_association":"CONTRIBUTOR","body":"Just wondering: why did you decide to use `Tuple`s instead of separate `struct`s? Ref: https://github.com/JuliaOpt/MathOptInterface.jl/issues/211#issuecomment-364451858; I understand you didn't want to use both `Pair`s and `Tuple`s, but are `struct`s with explicit field names not just easier to use/more self-documenting than `Tuple`s?"}}
{"actor":{"display_login":"tkoolen"}}