Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
Так а в чем функциональность описанного подхода? Хотелось бы увидеть реализацию какой-нибудь простой монады типа Maybe или List и пример того, как с ней удобно работать, чтобы в этом был смысл.
Для котлина есть https://arrow-kt.io от 47 Degrees, в котором даже синтаксический сахар для монадических операций сделан, если я правильно помню.
suspend fun main() {
val result1: Either<String, Int> = Right(1)
val result2: Either<String, Int> = Right(1)
val result3: Either<String, Int> = Right(1)
val composition: Either<String, Int> =
either {
val a = result() // Биндинг через оператор invoke
val b = result()
val c = result()
a + b + c
}
println(composition)
}
Функциональный Kotlin. Во имя добра, радуги и всего такого