J'ai un problème avec les paramètres implicites en Haskell (GHC). J'ai une fonction f qui suppose le paramètre implicite x et souhaite l'encapsuler dans un contexte en appliquant la méthode f à g
f :: (?x :: Int) => Int -> Int
f n = n + ?x
g :: (Int -> Int) -> (Int -> Int)
g t = let ?x = 5 in t
Mais lorsque j'essaie d'évaluer
g f 10
Je reçois l'erreur suivante x n'est pas liée, par exemple :
Unbound implicit parameter (?x::Int)
arising from a use of `f'
In the first argument of `g', namely `f'
In the second argument of `($)', namely `g f 10'
Quelqu'un peut-il me dire ce que je fais de travers ?
(J'essaie de faire fonctionner l'interface WordNet pour Haskell - http://www.umiacs.umd.edu/~hal/HWordNet/ - et il utilise des paramètres implicites de la manière décrite ci-dessus, et je continue à obtenir des erreurs comme celle ci-dessus lorsque j'essaie de le compiler)