vidéo peertube - vidéo youtube - dépôt git
Curryfication et évaluation partielle (javascript/haskell)
Comment écrire des fonctions curryfiée et faire de l’évaluation partielle en Javascript et en Haskell.
rappels
fonction d’ordre supérieur : fonction qui prend ou retourne une fonction
fonction à plusieurs paramètres :
- non-curryfiée : prend plusieurs paramètres et retourne une valeur
- curryfiée : prend un seul paramètre et retourne une fonction gérant les paramètres restant
évaluation partielle : évaluation d’une fonction curryfiée pour une partie de ses paramètres
exemple en Javascript
- fonction classique (non-curryfiée) à plusieurs paramètres :
- fonction wrapper simulant l’évaluation partielle :
- fonction curryfiée simulant plusieurs paramètres :
- fonction obtenue par évaluation partielle :
exemple en Javascript ES6
- fonction classique (non-curryfiée) à plusieurs paramètres :
- fonction wrapper simulant l’évaluation partielle :
- fonction curryfiée simulant plusieurs paramètres :
- fonction obtenue par évaluation partielle :
exemple en Haskell
- fonction non-curryfiée utilisant un tuple :
- fonction wrapper simulant l’évaluation partielle :
- fonction curryfiée simulant plusieurs paramètres :
- fonction obtenue par évaluation partielle :