termitype 0.0.11

Terminal-based typing test inspired by a certain typing test you might know.
Documentation
{
  "name": "code_haskell",
  "source": "https://github.com/monkeytypegame/monkeytype/blob/63b63ffa9c3f39c7de3436c6155b59548488a9eb/frontend/static/languages/code_haskell.json",
  "words": [
    "!",
    "'",
    "''",
    "-",
    "--",
    "-<",
    "-<<",
    "->",
    "::",
    ";",
    "<-",
    ",",
    "=",
    "=>",
    ">",
    "?",
    "#",
    "*",
    "@",
    "[|",
    "|]",
    "\\",
    "_",
    "`",
    "{,",
    "}",
    "{-",
    "-}",
    "|",
    "~",
    "as",
    "case",
    "of",
    "class",
    "data",
    "data family",
    "data instance",
    "default",
    "deriving",
    "deriving instance",
    "do",
    "forall",
    "foreign",
    "hiding",
    "if",
    "then",
    "else",
    "import",
    "infix",
    "infixl",
    "infixr",
    "instance",
    "let",
    "in",
    "mdo",
    "module",
    "newtype",
    "proc",
    "qualified",
    "rec",
    "type",
    "type family",
    "type instance",
    "where",
    "Int",
    "Float",
    "Double",
    "Bool",
    "Char",
    "String",
    "()",
    "[Int]",
    "[Float]",
    "[Double]",
    "[Bool]",
    "[Char]",
    "[String]",
    "(&&)",
    "(||)",
    "(==)",
    "(/=)",
    "(<)",
    "(<=)",
    "(>)",
    "(>=)",
    "(+)",
    "(-)",
    "(*)",
    "(/)",
    "(**)",
    "(^)",
    "(^^)",
    "(<$)",
    "(<$>)",
    "(<*>)",
    "(*>)",
    "(<*)",
    "(>>=)",
    "(>>)",
    "(=<<)",
    "(.)",
    "($)",
    "($!)",
    "(++)",
    "(!!)",
    "not",
    "otherwise",
    "fst",
    "snd",
    "curry",
    "uncurry",
    "max",
    "min",
    "succ",
    "pred",
    "negate",
    "abs",
    "signum",
    "quot",
    "rem",
    "div",
    "mod",
    "recip",
    "even",
    "odd",
    "fmap",
    "pure",
    "return",
    "foldMap",
    "foldr",
    "foldl",
    "elem",
    "maximum",
    "minimum",
    "sum",
    "product",
    "traverse",
    "sequence",
    "id",
    "const",
    "flip",
    "until",
    "undefined",
    "seq",
    "map",
    "filter",
    "head",
    "last",
    "tail",
    "init",
    "null",
    "length",
    "reverse",
    "and",
    "or",
    "any",
    "all",
    "concat",
    "concatMap",
    "iterate",
    "repeat",
    "replicate",
    "cycle",
    "take",
    "drop",
    "takeWhile",
    "dropWhile",
    "span",
    "break",
    "splitAt",
    "notElem",
    "lookup",
    "zip",
    "zipWith",
    "unzip",
    "lines",
    "words",
    "unlines",
    "unwords",
    "putChar",
    "putStr",
    "putStrLn",
    "print",
    "getChar",
    "getLine",
    "getContents",
    "interact",
    "readFile",
    "writeFile",
    "appendFile",
    "readIO",
    "readLn",
    "Eq",
    "Enum",
    "Bounded",
    "Num",
    "Real",
    "Fractional",
    "Semigroup",
    "Functor",
    "Applicative",
    "Monad",
    "Foldable",
    "Show",
    "Read",
    "Maybe",
    "Either",
    "Ordering"
  ]
}