Bayesian researcher and Julia developer for quite some time now. I am part of the Julia Gaussian Process team and developed all kind of serious tools for statistical analysis and more stupid stuff like WatchJuliaBurn.jl or DeepFry.jl
Type instabilities are not always bad! Using non-concrete types, and avoiding method specialization and type inference can help with improving latency and, in specific cases, runtime performance. The latter is observed in inherently dynamic contexts with no way to compile all possible method signatures upfront, because code needs to be compiled at points of dynamic dispatch by design. We present a concrete case we face in our production environment, additional examples, and related trade-offs.