[過去ログ] 関数型プログラミング言語Haskell Part33 (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
679(1): 2021/01/23(土)13:17 ID:u7XOzuV6(1/2) AAS
>>665
ListT を使えばと思ったけどだめだった。
・参考
外部リンク:blog.mudatobunka.org
・残骸
module Rand2 where
-- stack install list-t
-- stack exec ghci
import Control.Monad.IO.Class ( liftIO )
import ListT ( ListT, toList )
import System.Random ( Random(randomIO, randomRIO) )
t1 :: ListT IO Int
t1 = return 3
t2 :: ListT IO Int
t2 = liftIO (randomIO :: IO Int)
t3 :: ListT IO [Int]
t3 = repeat <$> t2
output :: ListT IO [Int] -> IO ()
output t3 = do
li0 <- toList t3
print $ take 10 $ head li0
680(1): 2021/01/23(土)22:12 ID:u7XOzuV6(2/2) AAS
>>679
できたー!
module Rand2 where
-- stack install list-t
-- stack exec ghci
import Control.Monad.IO.Class ( liftIO )
import ListT ( ListT, toList, cons, take )
import System.Random ( Random(randomIO) )
t2 :: ListT IO Int
t2 = liftIO (randomIO :: IO Int)
t3 :: ListT IO Int
t3 = do
x <- t2
cons x t3
output :: IO ()
output = do
li <- toList $ ListT.take 10 t3
print li
{-
*Rand2> output
[7616927328998369033,6970782903781268443,-1509938769401207081,-2789264750098693865,-6524417077297424569,8403979199680420436,-3097298192134792937,-2736699795503652525,-4754186463647322678,5658901448509988002]
-}
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 1.504s*