It was originally called the html5-shiv.
Shiv really isn’t the right term, as a shiv is a stabbing-implement.
A shim is something which you use to level things out (or prop them up).
If a table has one leg that’s too short, you might shim it with a piece of wood or a phone book…
So html5-shim is for people who expect html5shiv to be called a shim.
That’s entirely it, as far as differences go.
Kind of like polyfill
s cover over the differences in implementations of features.
In North America, Polyfill might be called “Spackle”.