I’m happy to announce MeijerG.jl, a new Julia package providing numerical evaluation of the Meijer G‑function. The package aims to offer an easy-to-use interface for working with this very general special function.
Nice! I’ve noticed you rely on SpecialFunctions.jl, but you might be fine with a native Julia implementation for Bessel and Gamma instead?
EDIT:
I see that the other dependencies are already depending on SpecialFunctions.jl I really wish that was not the case. SpecialFunctions.jl adds external libraries that aren’t really needed in many cases.
Everything I wrote is Julia native so all that stands in the way of this being Julia native is, as you say, HypergeometricFunctions.jl relying on SpecialFunctions.jl.
This may seem like more of a roadblock than it truly is: I can get away without almost all of the stuff in SpecialFunctions.jl (though it would be a bit of work, it would be straightforward) but replacing HypergeometricFunctions.jl is essentially a no-go. So to make this Julia native we would need to start there.
If you have the skills to replace SpecialFunctions.jl by Bessels.jl (plus other packages) in these dependencies, that would be a nice long-term contribution IMO
@MikaelSlevinsky Would you entertain a PR to HypergeometricFunctions.jl which attempts to make it Julia native or is this something you’d prefer to be a fork? I had a quick look and I think it would not be that much work.
The same question can be asked for the other dependency: ClassicalOrthogonalPolynomials.jl.
At some point the community that is working on special math functions needs to step up to reconsider this widespread use of SpecialFunctions.jl. Alternatively, SpecialFunctions.jl itself could reexport native packages like Bessels.jl instead of relying on external libraries that are not even MIT-licensed.