class PersonData(val name: String, val age: Int) class Person(val data: PersonData, talker: CanCommunicate, walker: CanMove) : Humanoid(), CanCommunicate by talker, CanMove by walker { } fun main() { PersonData("John", 25).let { Person(it, Talker(it), Walker(it)).communicate() } }