Блин, думал избежать обсуждения этого выброса, но оно везде настигает 😅
У меня Kotlin pays the bills, а на кложе пишу свои сайд-проекты)
И там и там есть свои заморочки по поводу типов.
Вот например в строгой типизации меня бесит что на каждый чих приходится объявлять новый класс/структуру. Ну вот делаю я хэндлер запроса на сервере, мне там этот Pojo не нужен, я итак каждое поле от юзера валидирую. Намного приятней принять мапу, провалидировать ключи и пойти дальше. Толку от того, что я эти ключи в классе перечислю - нуль.
Но вот в других местах хочется точно знать что тебе приходит в функцию, этого иногда не хватает в динамическом языке.
Всякие спеки и pre-condition конечно помогают, но всё равно чуть больше работы надо сделать)
Поэтому думается мне что gradual typing - самое оно.
Написал статически-типизированные функции где надо, сказал чекеру «check types” и поехал дальше кнопки красить))