negamaxStrategy :: Int -> GameStrategy
negamaxStrategy maxDepth = do
    player <- view gsCurrentPlayer
    curBoard <- view gsBoard

    --Return the result of evaluating the game tree.
    return . evalGameTree $ genGameTree maxDepth (GN curBoard 0 player 0)
negamaxStrategy :: Int -> GameStrategy
negamaxStrategy maxDepth = do
    player <- view gsCurrentPlayer
    curBoard <- view gsBoard

    --Return the result of evaluating the game tree.
    return . evalGameTree $ genGameTree maxDepth (GN curBoard 0 player 0)
negamaxStrategy maxDepth = do
    player <- view gsCurrentPlayer
    curBoard <- view gsBoard

    --Return the result of evaluating the game tree.
    return . evalGameTree $ genGameTree maxDepth (GN curBoard 0 player 0)