Imagina o tanto de código que foi escrito com o pressuposto de que o array começa com o índice 0, agora imagina fazer essa mudança em uma das principais linguagens e enfrentar a ira a milhares de desenvolvedores que se adaptaram com o índice 0 e a quebradeira geral dos programas.

Muito do que vemos nas linguagens existe simplesemnte devido à esse problema de mudar quando muito já foi construído em cima desse pressuposto. Javascript e seus comportamentos bizarros (como quando se usa == ao invés de ===) e seus consequentes "remendos" são mais problemáticos que o índice 0 e nem isso criou uma mudança. Se fossem resolver os problemas do Javascript, a Internet simplesmente quebraria, pois milhares de sites, plugins e bibliotecas ainda funcionam com código legado de muito anos atrás.