Exemple de pliage

Le temps de production d`une donnée est noté T i n p u t {displaystyle scriptstyle t _ {input}}, et l`heure pour les dernières données consommées est notée T o u t p u t {displaystyle scriptstyle t _ {output}}. Dans certains cas, il existe des alternatives au pliage de cas. Int est un supertype de list [int]. Dans la programmation fonctionnelle, le pli (également appelé réduire, accumuler, agréger, compresser ou injecter) fait référence à une famille de fonctions d`ordre supérieur qui analysent une structure de données récursive et par l`utilisation d`une opération de combinaison donnée, recombinent les résultats de le traitement récursif de ses parties constituantes, en construisant une valeur de retour. Mais de nombreux scripts n`ont pas de distinctions de cas et certains scripts (y compris le latin) peuvent être représentés en Unicode à plus d`un titre. Si l`opération binaire f est associative, cette valeur sera bien définie, i. S`il s`agit du deuxième argument qui doit être du même type que le résultat, alors f peut être considéré comme une opération binaire qui s`associe sur la droite, et inversement. Au fait, si vous venez de Ruby, comme moi, c`est la même idée que l`injection. Hélas, ce modèle de comparaison insensible à la casse se décompose avec certaines langues. Dans cet exemple, nous déterminons quel titre est approprié pour l`élément en cours, construire la chaîne que nous voulons, et l`ajouter à la fin de l`accumulateur (qui est une liste).

Voici notre classe et l`objet compagnon que nous travaillerons avec. Le bloc fonctionnel, additionneur, est donc réduit. En revanche, foldl s`appellera immédiatement avec de nouveaux paramètres jusqu`à ce qu`il atteigne la fin de la liste. Le nombre maximal de données doit être le magasin d dans cet exemple est 2. C`est int >: list [int]? La raison en est que plusieurs données produites à partir d`un bloc d`opération doivent être distinguées des données N produites à partir des opérations d`origine. Le pliage de la liste [1, 2, 3, 4, 5] avec l`opérateur d`addition se traduirait par 15, la somme des éléments de la liste [1, 2, 3, 4, 5]. Bien que vrai pour l`allemand, en finnois les caractères marqués diaerisis ne peuvent pas être convertis à la lettre de base suivie par`e`: le diaerisis n`a pas la même interprétation dans cette langue. Par conséquent, plusieurs opérations identiques (inférieures à N) utilisées dans le système d`origine pourraient être remplacées par un bloc d`opération de signal dans un système transformé.