람다 식: fun 키워드(F#)
fun 키워드는 람다 식, 즉 익명 함수를 정의하는 데 사용됩니다.
fun parameter-list -> expression
설명
parameter-list는 이름으로 구성되며 선택적으로 매개 변수의 형식을 포함할 수 있습니다. 유효한 매개 변수 목록의 예로 다음과 같은 것이 있습니다.
fun a b c -> ...
fun (a: int) b c -> ...
fun (a : int) (b : string) (c:float) -> ...
parameter-list는 임의의 F# 패턴으로 구성될 수 있습니다. 사용할 수 있는 패턴의 전체 목록은 패턴 일치(F#)을 참조하십시오.
expression은 함수의 본문입니다. 그중 마지막 식에서 반환 값을 생성합니다. 유효한 람다 식의 예로는 다음과 같은 것이 있습니다.
fun x -> x + 1
fun a b c -> printfn "%A %A %A" a b c
fun (a: int) (b: int) (c: int) -> a + b * c
fun x y -> let swap (a, b) = (b, a) in swap (x, y)
람다 식 사용
람다 식은 함수를 추가로 정의하지 않고서 목록이나 기타 컬렉션에 대해 작업을 수행하려는 경우에 매우 유용합니다. 대부분의 F# 라이브러리 함수는 함수 값을 인수로 취하므로 이러한 경우에 람다 식을 사용하면 매우 편리할 수 있습니다. 다음 코드에서는 목록의 요소에 람다 식을 적용합니다. 이 경우 익명 함수를 통해 목록의 각 요소에 1이 더해집니다.
let list = List.map (fun i -> i + 1) [1;2;3]
printfn "%A" list