Rodegast
Проблема не в типах, а в ошибках связанных с динамической типизацией.
Так я тебе говорю, что это не проблема. Это всё можно выявить с помощью юнит-тестов. Проблема - это когда ты что-то сделать не можешь.
У этой, кстати, фигни есть и обратная сторона: если Go взять (я иногда смотрю по нему видео, хоть и не использую сам язык, учусь просто, перенимаю всякие методы), там нужно на каждый чих делать кастование. Это вообще неудобно. Ты не можешь присвоить целой переменной дробный нуль, нужно кастовать. Если C++ брать, там нет такого, хоть там и строгая типизация.
Зайди на
https://golang.org/Вот не работает это, потому что разные типы у них
func main() {
i := 0
fmt.Println(i == 0.5)
}
Мелочь такая, а сколько таких мелочей по всему коду?
А питон как бы полиморфизм реализует: ты делал функцию для кортежей, например, а работает она и для списков, и для строк, и для байтов, и для множеств, и для словарей, и вообще для итерабельных. Это же сравнение, оно что делает? запускается внутренние методы магические - это мощь.