Jishnu Bhattacharya
Jishnu Bhattacharya
On master: ```julia julia> @btime fill(2, 300, 300); 61.167 μs (2 allocations: 703.17 KiB) julia> x = Fill(2, 300, 300); julia> @btime [i for i in $x]; 77.769 μs (2...
Define broadcasting rules so that structure-preserving operations involving a `Diagonal` `AbstractFill` do not allocate. After this PR ```julia julia> D = Diagonal(Fill(2,3)) 3×3 Diagonal{Int64, Fill{Int64, 1, Tuple{Base.OneTo{Int64}}}}: 2 ⋅ ⋅...
In a fresh Julia session ```julia _ _ _(_)_ | Documentation: https://docs.julialang.org (_) | (_) (_) | _ _ _| |_ __ _ | Type "?" for help, "]?" for...
This works: ```julia julia> a = ones(2,2); julia> LazyArray(@~ @. a * 2) (2×2 Array{Float64,2}) .* (Int64): 2.0 2.0 2.0 2.0 ``` but attempting to create the array directly in...
Currently, `no_offst_view` has special methods defined for `Bsae.OneTo`, but nothing for `SOneTo` axes that a `StaticArray` has. As a consequence, `OffsetArrays` doesn't realize that a `SOneTo` is 1-based. This leads...
Fix an overflow issue with broadcasting over `IdOffsetRange`, and add more methods that exist for `Base` ranges: ```julia julia> r = OffsetArrays.IdOffsetRange(3:5, -1) OffsetArrays.IdOffsetRange(values=2:4, indices=0:2) julia> r .+ big(typemax(Int)) #...
Fixes #273, but this will need to be tested extensively to avoid breakages. Better or more robust solutions are welcome! This PR delegates the `promote_type` operation to the parent wherever...
See https://github.com/JuliaLang/julia/issues/44939. The issue is that, because of more aggressive type promotion for arrays on nightly, ```julia ulia> [ones(2), ones(2:3)] ERROR: DimensionMismatch: axes must agree, got (Base.OneTo(2),) and (OffsetArrays.IdOffsetRange(values=2:3, indices=2:3),)...
Propagate `first` and `last` to the parent for `OffsetArray(::AbstractRange)`. On master `step` was propagated anyway as this is not defined for abstractarrays in general. The current change is an optimization...
This PR continues #93, along the lines of the strategy 2 mentioned [here](https://github.com/JuliaArrays/OffsetArrays.jl/issues/91#issuecomment-567975834), ie. the axes of the two terms have to be compatible. Now these are possible: ```julia julia>...