In C++, many new algorithms are first implemented in libraries like Boost and then ported to the std. I feel like the Fortran stdlib is more like Boost than C++ std, and I would like to ask if some stdlib functions/subroutines will be ported to Fortran core or intrinsic modules in the future?
In addition, I find it weird that Fortran stdlib depends on Python. Are there any plans of replacing the fypp preprocessor with one written in pure Fortran?
We try to be very conservative what we put in and we focus on the API. The implementation can always be improved
Even the API can be tough to get right, so we always put new functionality into “experimental” section, which allows us to change API if we discover that our initial design of API was not optimal
So far we have not graduated anything from experimental to “main”. So we can still adjust the exact requirements, but so far our preliminary plan is that once something graduates to “main”, the API will be stable and we will ensure backwards compatibility. So the “main” section would then be more like the C++ or Python standard library.
We are hoping that compilers will eventually include stdlib
In addition, fpm can even enable it by default in the future (or include by default in fpm.toml for all new projects)
Regarding the relationship to the Fortran committee that can include new features into the Fortran standard itself: the committee is also generally conservative what to put into the language itself; I would suggest to only propose things from “main” (currently none) and only after several years of usage.
As stdlib matures, we can provide better and more detailed answers. But the above should give you an idea how stdlib relates to the Fortran ecosystem.
Starting today, there’s a rolling pre-processed Fortran-only source release in the stdlib-fpm branch. This means that you can use stdlib as an fpm dependency. See the Build with fpm section of the README. Thanks to @zoziha, @lkedward, @awvwgk, and @jeremie.vandenplas for implementing this. I think this may be a major milestone for both fpm and stdlib.