Este tipo de función es anónima (sin nombre) que se puede tratar como un valor: se puede pasar como argumento a otras funciones, devolver desde ellas o guardar en otras variables.

private fun calculadora(n1: Int, n2: Int, fn: (Int, Int)->Int): Int {
    return fn(n1, n2)
}

var funcion = { x: Int, y: Int -> x + y }
println("La suma de 8 y 2 es: " + calculadora(8, 2, funcion))
println("La potencia de 2 elevado a 5 con lambda es: " +
calculadora(2, 5,
    { x, y ->
        var valor = 1
        for (i in 1..y) valor += x
        valor // Al final se tiene que indicar el valor
    }
))