True enough, though as soon as you have dependencies, you can't guarantee cross-platform or cross-version portability with those other languages either.
They all come with a dependency manager and the problem of sh (or bash? got your bashisms ready all the time?) is that the moment of introducing dependencies is "immediate".