람다 식: fun 키워드(F#)

fun 키워드(keyword) 람다 식, 즉 익명 함수를 정의하는 데 사용됩니다.

구문

fun parameter-list -> expression

설명

매개 변수 목록은 일반적으로 이름 및 선택적으로 매개 변수 형식으로 구성됩니다. 일반적으로 매개 변수 목록은 모든 F# 패턴으로 구성될 수 있습니다. 가능한 패턴의 전체 목록은 패턴 일치를 참조하세요. 유효한 매개 변수 목록에는 다음 예제가 포함됩니다.

// Lambda expressions with parameter lists.
fun a b c -> ...
fun (a: int) b c -> ...
fun (a : int) (b : string) (c:float) -> ...

// A lambda expression with a tuple pattern.
fun (a, b) -> …

// A lambda expression with a cons pattern.
// (note that this will generate an incomplete pattern match warning)
fun (head :: tail) -> …

// A lambda expression with a list pattern.
// (note that this will generate an incomplete pattern match warning)
fun [_; rest] -> …

반환 값을 생성하는 마지막 식인 함수의 본문입니다. 유효한 람다 식의 예는 다음과 같습니다.

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

참고 항목