nbytesavailable is a terrible name but it’s a pretty obscure function that very few people will use. Fwiw, I preferred the name
bytesavailable but got overruled by people wanting that
beginindex is also not great, but the function is mostly not for public consumption. It will typically be accessed by writing something like
v[begin+1:end-1] which will lower to
Of course, some generic code will want to call the function and if you want to extend it, you’ll need to use the name. There was discussion of calling it
lastindex but it seems odd for those to be the names for
end in indexing expressions. We could call it
beginof to match the old name
The splitting of Base Julia into standard library packages is absolutely necessary for the language not to collapse under its own weight or stagnate. You’ll note that what’s left in Base now is much more like what other programming languages provide instead of the extreme kitchen sink approach we started out with. The standard library now includes the following:
Which of these do you feel is really essential to have available without doing any import at all?
As a matter of historical interest, there was a period of time where sticking code into the JuliaLang/julia
extras directory was how packages were developed. It may have been a mild inconvenience when we introduced a package manager to split that code out, but it’s clearly something we needed to do. This is not fundamentally any different.