I’m half way through “The Joy of Kotlin” and I’m finding it an excellent resource for doing functional programming in Kotlin - loads of exercises building standard FP persistent data structures and algebraic data types, like Either etc, and their combinators from scratch
https://www.amazon.com/Joy-Kotlin-Pierre-Yves-Saumont/dp/1617295361