Par exemple, au lieu deExiste-t-il un moyen d'obtenir une forme carrée des opérateurs binaires dans SML/NJ?
- op =;
val it = fn : ''a * ''a -> bool
Je préférerais avoir
- op =;
val it = fn : ''a -> ''a -> bool
pour une utilisation dans
val x = getX()
val l = getList()
val l' = if List.exists ((op =) x) l then l else x::l
Il est évident que je peux le faire moi-même, par exemple,
val l' = if List.exists (fn y => x = y) l then l else x::l
mais je veux m'assurer que je ne manque pas une manière plus élégante.
+1. Et pour le contraire, vous pouvez écrire 'fun decurry f (x, y) = f x y'. (Ceci est utile pour appeler des fonctions comme 'foldl' qui attendent une fonction binaire.) – ruakh