The context here is that LoopVectorization is not an ordinary library, but a library that attempts to do very low-level things with the compiler — basically to create a new compiler-optimization pass for other code. The argument was that, if you want to hook into the compiler at that level, you should really be interfacing with the compiler directly, rather than indirectly through Julia’s high-level language. And since our low-level compiler (LLVM) is written in C++, to access it directly you really need to be writing in C++.
I don’t think this applies to ordinary Julia packages/libraries (of which there are already many thousands).