Ma réponse courte: "c 'lambda-de' e". Bien que je m'accroche à la «fonction« lambda »c» «e», je pense que lambda-of est le compromis œcuménique. L'analyse suit.
C'est une excellente question ne serait-ce que pour les réponses bizarres. La plupart des traductions ont d'autres significations que pour les expressions lambda, conduisant à des interprétations exotiques. En tant que vieux hacker d'expression lambda, j'ignore simplement la notation .NET et je la réécris comme lambda dans ma tête tout en souhaitant qu'ils aient fait presque n'importe quoi d'autre pour cela.
Pour raconter le code au téléphone, vous voulez que quelqu'un puisse écrire le code dans l'ordre. C'est un problème, bien sûr, mais lambda-arrow ou quelque chose est probablement le meilleur que vous puissiez obtenir, ou peut-être lambda-in, mais lambda-of est le plus précis.
Le problème est l'utilisation de l'infixe et comment nommer le tout et le rôle des parties gauche et droite avec quelque chose qui fonctionne lorsqu'il est prononcé à la place de l'infixe.
Cela peut être un problème trop contraint!
Je n'utiliserais pas «tel que» parce que cela implique que le côté droit est un prédicat que le côté gauche devrait satisfaire. C'est très différent de parler d'un côté droit dont le côté gauche a été abstrait en tant que paramètre fonctionnel. (La déclaration MSDN sur "Toutes les expressions lambda" est tout simplement offensante et inexacte.)
Il y a quelque chose qui cloche à propos de "va à" bien que cela puisse être aussi proche que possible. "Va vers" implique une transformation, mais il n'y a pas exactement une variable c qui va vers une expression dans c. L'abstraction d'une fonction est un peu insaisissable. Je pourrais m'y habituer, mais j'aspire toujours à quelque chose qui met l'accent sur l'abstraction de la variable.
Étant donné que le côté gauche est toujours un identifiant simple dans les cas utilisés jusqu'à présent [mais attendez les extensions qui peuvent confondre cela plus tard], je pense que pour "c => expression" je lirais "c" expression lambda-function " "'ou même" c' arg '"fonction" expression ". Dans le dernier cas, je pourrais alors dire des choses comme "b 'arg' c 'arg' 'fonction' expression".
Il vaudrait peut-être mieux indiquer encore plus clairement qu'une expression lambda est introduite et dire quelque chose comme "'arg' b 'arg' c 'fonction' expression".
Comprendre comment traduire tout cela dans d'autres langues est un exercice pour l'étudiant [; <).
Je m'inquiète toujours de "(b, c) => expression" et d'autres variantes qui pourraient apparaître si ce n'est déjà fait. Peut-être "'args' b, c 'expression de fonction'".
Après toutes ces réflexions, je remarque que je suis en train de traduire "c => e" par "'lambda' c 'fonction' e" et que le mappage à la forme exacte doit être compris par contexte: λc (e ), c => e, f où f (c) = e, etc.
Je m'attends à ce que l'explication "passe-à" l'emporte simplement parce que c'est là qu'une majorité dominante va voir les expressions lambda pour la première fois. C'est dommage. Un bon compromis pourrait être "c ' lambda-of ' e"