التعبيرات لامدا: الترفيه كلمة أساسية (F#)

funالكلمة الأساسية هو المستخدمة لتعريف تعبير lambda، التي هو، على دالة مجهول.

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#).

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# مكتبة الدالات قيم دالة كوسيطة، ويمكن أن تكون مناسبة خاصة إلى استخدام تعبير lambda في هذه الحالات. التعليمة البرمجية التالية يطبق تعبير lambda إلى عناصر قائمة. في هذه الحالة، تضيف دالة مجهول 1 إلى كل عنصر قائمة.

let list = List.map (fun i -> i + 1) [1;2;3]
printfn "%A" list

راجع أيضًا:

المرجع

الدالات (F#)