Salut j'ai le code suivantvariable Fonction non compris dans Haskell
import Data.Maybe
import Test.QuickCheck
import System.Random
rndExpr :: Gen Expr -> IO Expr
rndExpr gen = do
rnd <- newStdGen
return (generate 5 rnd gen)
Mais je reçois « pas dans la portée "générer", pourquoi est-ce donc?
Cordialement Darren
Modifier J'importent Test.QuickCheck mais il reste des plaintes à propos de la "générer" n'est pas dans la portée
Modifier 2
Comment écrire cette fonction pour qu'elle fonctionne avec quickcheck version 2? Je simplement essayé de mettre « Ungen » où était sans générer succsess, je quickcheck également installé v 2 (cabale installer QuickCheck-2.1.0.3)
je besoin d'une fonction avec des propriétés suivantes stdGen->Gen Expr->Expr'
et Ungen semblent me donner ce fonctionnalité, mais comme je l'ai dit, mon compilateur ne peut pas trouver cette fonction. Y a-t-il d'autres fonctions que je pourrais utiliser pour ce problème?
Votre modification fournit toujours des informations incomplètes. Quelle version de quickcheck utilisez-vous? QuickCheck2 n'exporte pas 'generate' afaik. Votre extrait de code fonctionne avec QC1 à condition de corriger les flèches Unicode (ne le faites pas) et d'ajouter 'type Expr = Int'. –
Ne sais pas comment vous vérifiez quelle version im en utilisant, mais je suppose que im en utilisant la version 1, et donc je veux utiliser la fonction "générer" dans quickcheck. Mais si je change ma question, y a-t-il un autre moyen d'écrire cette fonction? – Darren