probability-0.2.4: Probabilistic Functional Programming

Safe HaskellSafe-Inferred

Numeric.Probability.Example.Collection

Contents

Synopsis

Documentation

type Collection a = [a]

selectOne :: Fractional prob => StateT (Collection a) (T prob) a

select1 :: Fractional prob => Collection a -> T prob a

select2 :: Fractional prob => Collection a -> T prob (a, a)

select :: Fractional prob => Int -> Collection a -> T prob [a]

Example collections

marbles

data Marble

Constructors

R 
G 
B 

Instances

cards

data Suit

Constructors

Club 
Spade 
Heart 
Diamond 

Instances

data Rank

Constructors

Plain Int 
Jack 
Queen 
King 
Ace 

Instances

type Card = (Rank, Suit)

faces :: [Rank]

ranks :: [Rank]

suits :: [Suit]

Example

value :: Card -> Int

mini-blackjack: draw 2 cards, and if value is less than 14, continue drawing until value equals or exceeds 14. if values exceeds 21, you lose, otherwise you win.

draw :: Fractional prob => ([Card], Collection Card) -> T prob ([Card], Collection Card)

win :: ([Card], b) -> Bool

chanceWin :: (Fractional prob, Ord prob, Random prob) => T (T prob Bool)