Is there any reason to have length of integers equal to 1?
For example, length(100) = 1. Recently, I had a bug in my code because of this. Shouldn’t length(a_number) result in an error?
Is there any reason to have length of integers equal to 1?
For example, length(100) = 1. Recently, I had a bug in my code because of this. Shouldn’t length(a_number) result in an error?
Numbers are iterable objects to enable code like the following to just work with integer inputs:
function triplesum(v)
s = zero(eltype(v))
for element in v
s += 3*element
end
return s
end
julia> triplesum(1:5)
45
julia> triplesum(1)
3
The length of an iterable is the number of iterations performed to traverse each element (which for a number, as you found, is one).
https://github.com/JuliaLang/julia/issues/7903
Enjoy the read
Thank you. Will read the linked issue.