Блин, так логично, что я даже не задумывался об этом. Думал что такой критический софт только на статике писать. Но ведь действительно, типы это самая меньшая проверка из возможных)
примерно, все, что тебе может дать статическая система типов, это что условная тачка будет ускоряться на integer, например. С точки зрения корректной работы программы такая гарантия ничем не лучше (или мб даже хуже), чем попытка ускорить на string.