2014-12-10 8 views
0

나는 지뢰 게시판을 생성하고 있으며 첫 번째 클릭 (실제로 클릭이 아니라 클릭을 나타내는 cmd로 작성된 문자열)을 기반으로 보드를 생성하려고합니다. 했다. 이것은 Gen와 IO 모나드를 혼합해야하기 때문에 문제입니다. Gen a를 IO로 변환하는 방법이 있습니까?Gen 모나드에서 IO 모나드로 값 가져 오기

나는 this 함수를 찾았습니다. 어느 것이 내가 원하는 것을 정확하게 할 것입니다. 그러나 가져 오기에는 사용할 수 없습니다.

+0

가 나는 '샘플을 사용할 수 있음을 깨달았다 더 나은 난수를 생성합니다 : : Gen a -> IO [a] 그리고 첫 번째 결과를 가져옵니다. 하지만 그건 좀 못생긴 해킹입니다. – SiXoS

+0

@Sibi QuickCheck 모듈의 모나드입니다. [link] (http://hackage.haskell.org/package/QuickCheck-2.7.6/docs/src/Test-QuickCheck-Gen.html#Gen)) – SiXoS

+0

가져 오기 가능합니다. 그냥'import Test.QuickCheck.Gen'. –

답변

2

내가 창을 사용하여 나쁜 생각 이었다는 것을 깨달았다 지금 StdGen 대신

를 사용하는이뿐만 아니라 내 경우에는 더 실용적입니다뿐만 아니라