О Котлине и функциях

Итак, я начал изучать Котлина, и у меня есть вопрос о функциях.

В Kotlin вы можете сделать javascript для создания переменной, которая может содержать любой тип. Но функции должны иметь свои параметры.

Так ли практика в Котлине все равно набирать все переменные? Разве это не бесполезно, позволяя переменным быть нетипизированными, но заставляя типы для параметров и возвращать значения функций?

Когда вы пишете

 val x = "Pizza" 

kotlin выводит из объявления, что «x» – это строка, не происходит какой-то магии, если вы попытаетесь

 var x = "Pizza" x = 42 

он не будет работать, потому что x имеет тип String.

kotlin переводит в java, а java – это «статически типизированный язык», что означает, что тип поля должен быть известен во время выполнения, другие языки, такие как Javascript, являются «динамически типизированными языками», которые в них не имеют типов переменных, t должен быть известен во время выполнения, поэтому он может сделать жизнь разработчика немного легче (или сложнее).