{"action":"created","issue":{"url":"https://api.github.com/repos/JuliaLang/julia/issues/13157","labels_url":"https://api.github.com/repos/JuliaLang/julia/issues/13157/labels{/name}","comments_url":"https://api.github.com/repos/JuliaLang/julia/issues/13157/comments","events_url":"https://api.github.com/repos/JuliaLang/julia/issues/13157/events","html_url":"https://github.com/JuliaLang/julia/issues/13157","id":106669708,"number":13157,"title":"Arraypocalypse Now (0.5 release)","user":{"login":"mbauman","id":154641,"avatar_url":"https://avatars.githubusercontent.com/u/154641?v=3","gravatar_id":"","url":"https://api.github.com/users/mbauman","html_url":"https://github.com/mbauman","followers_url":"https://api.github.com/users/mbauman/followers","following_url":"https://api.github.com/users/mbauman/following{/other_user}","gists_url":"https://api.github.com/users/mbauman/gists{/gist_id}","starred_url":"https://api.github.com/users/mbauman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbauman/subscriptions","organizations_url":"https://api.github.com/users/mbauman/orgs","repos_url":"https://api.github.com/users/mbauman/repos","events_url":"https://api.github.com/users/mbauman/events{/privacy}","received_events_url":"https://api.github.com/users/mbauman/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/JuliaLang/julia/labels/linear%20algebra","name":"linear algebra","color":"aa8800"},{"url":"https://api.github.com/repos/JuliaLang/julia/labels/multilinear%20algebra","name":"multilinear algebra","color":"006b75"}],"state":"open","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/JuliaLang/julia/milestones/14","html_url":"https://github.com/JuliaLang/julia/milestones/0.5.0","labels_url":"https://api.github.com/repos/JuliaLang/julia/milestones/14/labels","id":868319,"number":14,"title":"0.5.0","description":"Release-defining items for v0.5 - the `Arraymageddon` release.","creator":{"login":"vtjnash","id":330950,"avatar_url":"https://avatars.githubusercontent.com/u/330950?v=3","gravatar_id":"","url":"https://api.github.com/users/vtjnash","html_url":"https://github.com/vtjnash","followers_url":"https://api.github.com/users/vtjnash/followers","following_url":"https://api.github.com/users/vtjnash/following{/other_user}","gists_url":"https://api.github.com/users/vtjnash/gists{/gist_id}","starred_url":"https://api.github.com/users/vtjnash/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vtjnash/subscriptions","organizations_url":"https://api.github.com/users/vtjnash/orgs","repos_url":"https://api.github.com/users/vtjnash/repos","events_url":"https://api.github.com/users/vtjnash/events{/privacy}","received_events_url":"https://api.github.com/users/vtjnash/received_events","type":"User","site_admin":false},"open_issues":58,"closed_issues":22,"state":"open","created_at":"2014-11-16T16:16:12Z","updated_at":"2016-01-28T23:01:14Z","due_on":"2016-04-01T04:00:00Z","closed_at":null},"comments":154,"created_at":"2015-09-15T23:41:19Z","updated_at":"2016-01-29T16:38:02Z","closed_at":null,"body":"This issue supersedes the 0.4 work towards array nirvana (#7941), and will track the issues we aim to complete during 0.5.  This is an umbrella issue and will track specific tasks in other issues.  Please feel free to add things that I've missed (at least during the first half of 0.5).\r\n\r\n**Required underlying technologies**\r\n\r\n* [x] Julia native bounds checking and removal (#7799).  Several tries have been made at this, but I believe the current plan of action is to make `@inbounds` elide code blocks hidden within an `@boundscheck` macro, propagating down only one level of inlining (https://github.com/JuliaLang/julia/issues/7799#issuecomment-117362695).  This is a strong requirement for the subsequent steps. (implemented in #14474)\r\n* [ ] ReshapedArrays (#10507).  Requires better performance: https://groups.google.com/d/msg/julia-dev/7M5qzmXIChM/kOTlGSIvAwAJ\r\n\r\n# Major breaking behavior changes\r\n\r\n* [x] Drop dimensions indexed by a scalar (https://github.com/JuliaLang/julia/issues/4774#issuecomment-81228816; more generally, APL-style slicing where the rank of a slice is the sum of the ranks of the indexes, see below). PR at #13612.\r\n* [ ] Transpose returns a covector or transpose type (https://github.com/JuliaLang/julia/issues/4774#issuecomment-81228816)\r\n* [ ] Return slices as views.  A first attempt at this was at https://github.com/JuliaLang/julia/pull/9150.  Special attention may be needed for BitArray performance.\r\n* [ ] Flip the switch on the concatenation deprecation (#8599)\r\n* [ ] Remove default no-op behavior for (c)transpose (#13171)\r\n\r\n**New functionality**\r\n\r\n* [ ] Allow expression of varargs of defined length (#11242). This allows us to take full advantage of #10525.\r\n* [ ] Ditch special lowering of Ac_mul_Bt, use dispatch instead. (#5332)\r\n* [ ] Dimensions indexed by multidimensional arrays add dimensions (full APL-style: the dimensionality of the result is the sum of the dimensionalities of the indices)\r\n* [ ] Allow any index type in non-scalar indexing (#12567)\r\n* [ ] Easier creation of immutable arrays with tuples and #12113.\r\n\r\n**Other speculative possibilities**\r\n\r\n* [ ] A mutable fixed-size buffer type, which would allow for a Julia-native `Array` definition (#12447); this type could also be used for I/O buffers and string storage.\r\n* [ ] Base `IndexSet` on `BitArray` or perhaps any `AbstractArray{Bool}`.\r\n* [ ] Rework nonscalar indexing to prevent calling `find` on logical arrays and simply wrap it with an `IndexSet` instead?\r\n* [ ] Negated indexing with complement `IndexSet` (https://github.com/JuliaLang/julia/issues/1032)? (Perhaps in a package)\r\n* [ ] Deprecate partial linear indexing? (https://github.com/JuliaLang/julia/issues/5396) And disallow trailing singleton dimensions?\r\n* [ ] Find alternate syntax for typed arrays – indexing into a type (`T[...]`) is kind of a bad pun. This syntax is especially bad since some variations are parsed as indexing into a type while others are parsed as special forms (typed hvcat, typed comprehensions)\r\n* [ ] Change hashing to run-length encoding of the diff of arrays, which would allow integer ranges and arrays to hash as equal again. (https://github.com/JuliaLang/julia/issues/12226#issuecomment-122952826)\r\n* [ ] Move sparse arrays out of base into a standard package."},"comment":{"url":"https://api.github.com/repos/JuliaLang/julia/issues/comments/176852845","html_url":"https://github.com/JuliaLang/julia/issues/13157#issuecomment-176852845","issue_url":"https://api.github.com/repos/JuliaLang/julia/issues/13157","id":176852845,"user":{"login":"GlenHertz","id":1714451,"avatar_url":"https://avatars.githubusercontent.com/u/1714451?v=3","gravatar_id":"","url":"https://api.github.com/users/GlenHertz","html_url":"https://github.com/GlenHertz","followers_url":"https://api.github.com/users/GlenHertz/followers","following_url":"https://api.github.com/users/GlenHertz/following{/other_user}","gists_url":"https://api.github.com/users/GlenHertz/gists{/gist_id}","starred_url":"https://api.github.com/users/GlenHertz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/GlenHertz/subscriptions","organizations_url":"https://api.github.com/users/GlenHertz/orgs","repos_url":"https://api.github.com/users/GlenHertz/repos","events_url":"https://api.github.com/users/GlenHertz/events{/privacy}","received_events_url":"https://api.github.com/users/GlenHertz/received_events","type":"User","site_admin":false},"created_at":"2016-01-29T16:38:02Z","updated_at":"2016-01-29T16:38:02Z","body":"-1 for `A@[]`.  Is `A[[index]]` available for syntax? That would call something like `getindexview(A, index)`?  I believe that expresses that we are getting a level of indirection which is appropriate for a view."}}