Yes, and you can generalize some HOFs, various kinds of serialization, and so on that way,
and yes, tuples, simple as they are, are a nice abstraction if you want to do some metaprogramming.
And yes, Kotlin is closer to Java in terms of how data abstractions are represented.
Ideal language, of cause, doesn't have to coexist nicely with MLOCs of Java code sitting next to it.