Qu'est-ce que la citation ... Mais cela fonctionne également bien sans la citation. Alors quel est le point du ' code> utilisé pour? J'ai lu des fonctions au curry et lisez deux façons de définir la fonction Ajouter une fonction - curry et inconvénalement. La version curry ...
' code>? P> p>
5 Réponses :
La citation ne signifie rien à Haskell. Il ne fait que partie du nom de cette fonction.
Les gens ont tendance à utiliser ceci pour des fonctions "internes". Si vous avez une fonction qui résume une liste à l'aide d'un argument de l'accumulateur, votre fonction Somme prendra deux arguments. Ceci est moche, vous faites donc une fonction éditer, peut-être que je devrais simplement montrer le code: p> Vous faites cela afin que somme ' code> de deux args et une fonction
somme code> d'une seule liste
sum list = somme "0 liste code >. p>
somme ' code> est la queue -Récours, et afin que "l'API publique" soit belle. p> p>
somme ' code> pourrait également être dans
somme code>' s
où code> clause.
Méfiez-vous accidentellement de la fonction principale de votre fonction récursive, c'est-à-dire i.e. somme 's (x: xs) = somme (s + x) xs code>. Le système de type se plaint ici, mais si les fonctions ont le même type, il est difficile de trouver.
Il fait normalement référence à une version légèrement modifiée de la fonction d'origine.
Il n'y a pas de point particulier au caractère classiquement cependant, le ' code> dans cette instance; C'est juste une partie de l'identifiant. En d'autres termes,
myADD code> et
myADD ' code> sont distincts, les fonctions em> non liées. P>
' code> est utilisé pour désigner une relation d'évaluation logique. Ainsi, la fonction hypothétique
myADD code> et
myADD ' code> serait associée à ce que
myADD' code> pourrait être dérivé de
myAdd code>. Il s'agit d'une convention dérivée de la logique formelle et des preuves dans les universités (où Haskell a ses racines). Je devrais souligner que c'est seul em> une convention, Haskell ne l'applique pas. P>
Quote 'est juste un autre caractère autorisé dans les noms Haskell. Il est souvent utilisé pour définir des variantes de fonctions, auquel cas la citation est prononcée 'Prime'. Plus précisément, les bibliothèques Haskell utilisent des citations-variantes pour montrer que la variante est stricte. Par exemple: Dans ce cas, on dirait que la citation est tout simplement utilisée pour séparer les variantes curry et décédées. P> plield code> est paresseux,
replier ' code> est strict. P>
Il est souvent prononcé "Prime", de sorte que ce serait "MyAdd Prime". Il est généralement utilisé pour noter une étape suivante dans le calcul, ou une alternative.
Donc, vous pouvez dire P>
f x = let x' = subcomputation x in blah.
Comme dit par d'autres, le Le L'origine de cette notation est en mathématiques et en physique, où, si vous avez une fonction ' code> ne tient aucun sens pour Haskell lui-même. C'est juste un personnage, comme la lettre ou un numéro. P>
' code> est utilisé pour désigner des versions alternatives d'une fonction (dans le cas de
FLETL code> et
FLETL' code>) ou des fonctions d'assistance. Parfois, vous verrez même plusieurs
' code> sur un nom de la fonction. L'ajout d'un
' code> à la fin d'un nom de la fonction est tout simplement beaucoup plus concis que d'écrire
quelquefonctionhelper code> et
quelquecongrie code>. P>.
f (x) code>, son dérivé est souvent désigné comme
f '(x) code >. P>
Souhaitez-vous renommé «le sens de» dans le nom de la fonction Haskell? »
Dupliqué possible de Apostrophe dans les identificateurs de Haskell