코틀린에서 함수는 일급함수(first-class function)이다. 일급함수는 함수를 인자로 받거나 반환값으로 반환하는 것이 가능하다. 함수형 프로그래밍에서 말하는 고차함수는, 1. 함수를 매개변수로 받는 함수 2. 함수를 반환하는 함수 다음 두가지 조건 중 하나이상을 만족하면 고차함수(higher order function)라고한다. 예시 // 함수를 인자로 받는 함수 fun highFunc( func: () -> R ) : R { return func() } // 함수를 반환값으로 받는 함수 fun highFunc1() : () -> Unit { return { println("This is Higher Order Function") } } 고차 함수의 장점 1. 간결하게 코드를 짜 재사용성을 높..