@kyonifer I think that we are seeing different purpose in kotlin mathematics library. I do not think that we need super-fast implementations out of the box all in one super library. My experience tells me that super-performance is rarely needed. In most cases what you need is fine abstractions and convenient language and of course performance. but in one or few bottleneck places, not in the whole program. For that you need a universal language and fine API. So the idea is to build this API and provide basic not-so-fast implementations out of the box for everyday use. Now if you have real performance critical task, you just use optimized implementation in the bottleneck. For example my own generic matrix inversion is really slow (yet generic, it works on any fields). I currently have very lightweight connector for commons-maths matrices which is pretty fast and I am working on
koma
connector (it will be probably released in a few days). So if one encounters bottleneck, one just includes the library and switches operation context (like in this example:
https://github.com/altavir/kmath/blob/dev/benchmarks/src/main/kotlin/scientifik/kmath/linear/LinearAlgebraBenchmark.kt) in one single place. In very critical places we can also use JNI to attach super optimized C libraries, just like python does.