ну тайпскрипт явно движение в этом направлении. Но там всё упрощяется тем что под капотом жс. Но это не совсем полноценная система типов, как я уже говорил. Я не уверен что тот же io-ts схавает A & B & C
ну, я про тайпскрипт и котлин упомянул как раз в разрезе формы данных, ты можешь в рантайме собирать их в кучу и разделять благодаря свойствам как объекта, которые доступны сразу, а не через рефлективный секс типа Class.getDeclaredMethods(), BeanUtils и т.п.