안녕하세요 다음 코드기능 변수하지 하스켈
import Data.Maybe
import Test.QuickCheck
import System.Random
rndExpr :: Gen Expr -> IO Expr
rndExpr gen = do
rnd <- newStdGen
return (generate 5 rnd gen)
하지만 난이 ""범위에 포함되지 "발생 수는 왜 그렇게?
감사 대런
편집입니다했다 Test.QuickCheck를 가져오고 있지만 "생성 중"에 대한 불만은 아직 범위에 없습니다.
편집 2
Quickcheck 버전 2에서 작동하도록 어떻게이 함수를 작성 하시겠습니까? 나는 간단한없는 succsess로했다 생성 "unGen"를 넣어 시도, 나는 또한 설치 quickcheck의 2 절
나는 다음과 같은 속성 stdGen->Gen Expr->Expr'
및 unGen과 기능을 필요로 저를 줄 것 같다 (도당은 QuickCheck-2.1.0.3 설치) 기능,하지만 내가 말했듯이, 내 컴파일러는 그 기능을 찾지 못할 수 있습니다. 이 문제에 사용할 수있는 다른 기능이 있습니까?
수정 사항이 여전히 불완전한 정보를 제공합니다. Quickcheck의 어떤 버전을 사용하고 있습니까? QuickCheck2는 afaik를 생성하지 않습니다. 코드 조각은 QC1에서 찾을 수 있습니다. 유니 코드 화살표를 수정하고 (그렇게하지 마십시오)'type Expr = Int'를 추가하십시오. –
어떤 버전의 메신저를 어떻게 사용하는지 확인하지는 않지만, 메신저는 버전 1을 사용한다고 가정하고 따라서 quickcheck에서 "generate"함수를 사용하려고합니다. 그러나 Im이 내 질문을 변경하면이 기능을 작성하는 다른 방법이 있습니까? – Darren