Как сказано в ответе yole , вы можете вызывать функции верхнего уровня из разных файлов, импортируя функцию в другой файл.
В вашем случае это разрешится так:
Файл A
fun <A> fourtyTwo(foo: A): Int = 42
Файл B
import fourtyTwo
val bar = listOf("candy", "chips", "drink").map(::fourtyTwo)
В случае, когда функция верхнего уровня находится в файле, объявляющем имя пакета foo.bar, ваш файл B может выглядеть следующим образом:
import foo.bar.fourtyTwo
val bar = listOf("candy", "chips", "drink").map(::fourtyTwo)
или как это:
val bar = listOf("candy", "chips", "drink").map(::foo.bar.fourtyTwo)
Последнее может быть полезно при вызове функций с одинаковой сигнатурой, но в разных пакетах.
Надеюсь, это помогло!