Ai đó có thể cung cấp ví dụ "for-dummies" về cách sử dụng 'MonadRandom'?Làm thế nào để sử dụng MonadRandom?
Hiện nay tôi có mã nào những thứ như thế đi qua xung quanh biến máy phát điện, tất cả các cách từ chức năng chính:
main = do
g <- getStdGen
r <- myFunc g
putStrLn "Result is : " ++ show r
--my complicated func
myFunc g x y z = afunc g x y z
afunc g x y z = bfunc g x y
bfunc g x y = cfunc g x
cfunc g x = ret where
(ret, _) = randomR (0.0, 1.0) g
Cảm ơn
Tôi nghĩ rằng bạn có 'runRand' và' evalRand' trộn lẫn! – dflemstr
Không chắc chắn làm thế nào điều đó xảy ra, kể từ khi tôi chạy mã :) Cố định ngay bây giờ. – porges
Tất nhiên, 'myFunc',' aFunc', 'bFunc' và' cFunc' bây giờ là monadic. Chúng trả về các giá trị được bọc trong đơn vị 'Rand', mà phải được trích xuất bằng' >> = '(hoặc' <-' trong 'do') và được tạo ra với' return'. – pat