FWIW, there is a blue box in the manual that recommends BenchmarkTools. However, I agree that it isn’t very prominent.
In my opinion, the Julia documentation has so far served two purposes at the same time:
-
being a look-up manual, i.e. providing technical description of things (see for example here)
-
and being a starting point for learning the language, i.e. having some coherent readable block of text that makes you familiar with the concepts (tutorial like, see for example here)
And pre 0.7 it did, in my opinion and maybe suprinsingly, serve those purposes relatively well (it really was a nice read!).
However, the big refactor of the code, in the course of which things were moved to stdlibs and some (former base) functionality has even been moved to external packages, happend and, in my eyes, the documentation was somewhat left behind and didn’t evolve with the same pace. In particular the parts serving (2) above.
Fundamental things, like answers to questions like “How do I install a package in Julia?”, which you would certainly expect in a document of type (2) above, are now hidden somewhere in the stdlib “Pkg” documentation (you have to scroll quite a bit to find it in the navigation - and that is if you actually know what to look for).
It also doesn’t quite serve point (1) anymore - although much more than point (2). Try to find fft
in the new documentation (it was easily found pre 0.7). You won’t succeed, because it’s now in AbstractFFTs.jl + FFTW.jl, external (meta) packages.
In my opinion, we really need to be aware of the (somewhat orthogonal) purposes listed above and should, with increasing complexity of the language and it’s ecosystem, cleary decide what the official julia documentation should be good for. To what extent should we try to keep it as a good introduction? What is it worth as a look-up manual if I can’t even find fft
and others? What about stdlibs? Eventually, when stdlibs are separate versioned packages themselves, will the search in the julia doc only be good for finding things in base or will it cover those stdlibs as well (like now)? If so, why not also extend it to other packages that are considerd to be of fundamental importance?
Point (2) can of course be also covered by external materials like books, as @Tamas_Papp’s mentioned. No one keeps you from writing a very nice introduction. And maybe that’s even better because it can be made context specific (a physicist and a computer linguist might consider different functionality important). Also, one can start improving the getting started section of the Julia docs.
In any case, I believe it’s crucial to have the julia docs serve a clear purpose.
(Of course, I still use it as (1) and am glad that it’s there )