Skip to content

Commit d742d0a

Browse files
authored
Merge pull request #174 from PenguinDevs/master
incorrect state monad example outputs
2 parents 16b8c2a + 2145ae1 commit d742d0a

File tree

1 file changed

+7
-7
lines changed

1 file changed

+7
-7
lines changed

_chapters/statemonad.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -38,11 +38,11 @@ For example:
3838
```haskell
3939
-- | Roll a six-sided die once.
4040
-- >>> rollDie1 123
41-
-- (5,1218640798)
41+
-- (1218640798,5)
4242
-- >>> rollDie1 1218640798
43-
-- (4,1868869221)
43+
-- (1868869221,4)
4444
-- >>> rollDie1 1868869221
45-
-- (1,166005888)
45+
-- (166005888,1)
4646
rollDie1 :: Seed -> (Seed, Int)
4747
rollDie1 s =
4848
let s' = nextSeed s
@@ -55,9 +55,9 @@ And if we want a sequence of dice rolls:
5555
```haskell
5656
-- | Roll a six-sided die `n` times.
5757
-- >>> diceRolls1 3 123
58-
-- ([5,4,1],166005888)
58+
-- (166005888,[5,4,1])
5959
diceRolls1 :: Int -> Seed -> (Seed, [Int])
60-
diceRolls1 0 s = ([], s)
60+
diceRolls1 0 s = (s, [])
6161
diceRolls1 n s =
6262
let (s', r) = rollDie1 s
6363
(s'', rolls) = diceRolls1 (n-1) s'
@@ -276,8 +276,8 @@ Now, here's how we get a list of dice rolls using a direct adaptation of our pre
276276
277277
```haskell
278278
-- | Roll a six-sided die `n` times.
279-
-- >>> runState (diceRolls 3) 123
280-
-- ([5,4,1],166005888)
279+
-- >>> next (diceRolls 3) 123
280+
-- (166005888,[5,4,1])
281281
diceRolls :: Int -> Rand [Int]
282282
diceRolls 0 = pure []
283283
diceRolls n = do

0 commit comments

Comments
 (0)