<commit_before>{-
 - TODO:
 -  * quit works
 -  * end-game works; maybe GameState = Ongoing ... | Finished (Maybe Participant)
 -        strategy: rename GameState to Ongoing. create union. fix errors
 -  * flame has direction (for rendering purposes)
 -}

import Test.Hspec
import Data.List
import System.Random
import qualified Data.Sequence as S
import Bombastic

data Input = Input Participant Action

from2dList :: [[a]] -> (S.Seq (S.Seq a))
from2dList = S.fromList . fmap S.fromList

validMap :: [String]
validMap =
    [ "###################"
    , "#S ++       ++++ S#"
    , "# # # # # # #+#+# #"
    , "#++       # ++++++#"
    , "# # # # ##### # # #"
    , "#S        #      S#"
    , "###################"
    ]

-- cellAt :: Coords -> OpaqueGameState -> Cell<commit_msg>Update todos.<commit_after>{-
 - TODO:
 -  * quit works
 -  * games can be ended
 -  * flame has direction (for rendering purposes)
 -}

import Test.Hspec
import Data.List
import System.Random
import qualified Data.Sequence as S
import Bombastic

data Input = Input Participant Action

from2dList :: [[a]] -> (S.Seq (S.Seq a))
from2dList = S.fromList . fmap S.fromList

validMap :: [String]
validMap =
    [ "###################"
    , "#S ++       ++++ S#"
    , "# # # # # # #+#+# #"
    , "#++       # ++++++#"
    , "# # # # ##### # # #"
    , "#S        #      S#"
    , "###################"
    ]

-- cellAt :: Coords -> OpaqueGameState -> Cell
{'fraction_non_alphanumeric': 0.2315202231520223, 'fraction_numerical': 0.002789400278940028, 'mean_word_length': 2.4412470023980815, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 9, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1143532', 'n_tokens_mistral': 494, 'n_tokens_neox': 487, 'n_words': 117}