Yes, but that's just one table - for implementations that are supported by code. I don't need the table to just understand what this hash is - only to verify it. And, if I want to add my private hash, I don't need to update shared tables and be worried some other hash would have the same ID as mine. I can just use reasonably unique string.
It still needs a table, but it doesn't need consensus on what those names mean.
If someone says "sha2", that doesn't mean bcrypt, after all!
But at least you could work out the mapping in your head, without having to refer to a numeric table.