úÎ3Į)Vą      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ĄĒĢĪĨͧĻĐŠŦ Ž ­ Ū Ŋ ° portable provisional daan@cs.uu.nlą ē   portable provisional daan@cs.uu.nlģ !"#Language independent show function  !"" ! !"portable provisional daan@cs.uu.nl0#$%&'īĩķ·ļđ(š)*+,-./012345678ŧž―ū9ŋĀ:;<=4The most primitive token recogniser. The expression )tokenPrimEx show nextpos mbnextstate test,  recognises tokens when test returns Just x (and returns the value x). Tokens are shown in  error messages using show#. The position is calculated using nextpos, and finally,  mbnextstate, f can hold a function that updates the user state on every token recognised (nice to count tokens :-).  The function is packed into a Á type for performance reasons. >?Â@ABÃC!#$%&'()*+,-./0123456789:;<=>?@ABC!*+)(8756;C<=:>?@9AB,-./102#$%&'34!#$%&'$%&'()*+,-./0123456789:;<=>?@ABCportable provisional daan@cs.uu.nlDEFGHIJKLMNOPQRSTUDEFGHIJKLMNOPQRSTUDGHIJKLMNOPQRUSEFTDEFGHIJKLMNOPQRSTUportable provisional daan@cs.uu.nlVWXYZ[\]^_`abcdefghijklVWXYZ[\]^_`abcdefghijklVcZWXY[\]^ba`_efdgijklhVWXYZ[\]^_`abcdefghijklportable provisional daan@cs.uu.nl mnopqrstuv mnopqrstuv rutsnqpomv mnqpoopqrutsstuv portable provisional daan@cs.uu.nlX #$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijkl >non-portable (uses existentially quantified data constructors) provisional daan@cs.uu.nl-wxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ĄĒĢ-wxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ĄĒĢ-–—˜™š›œžŸ ĄĒwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•Ģ-wxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•xyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•– —˜™š›œžŸ ĄĒ—˜™š›œžŸ ĄĒĢKnon-portable (uses non-portable module Text.ParserCombinators.Parsec.Token) provisional daan@cs.uu.nlĪĨͧĻÄĐŠ–—˜™š›œžŸ ĄĒĪĨͧĻĐŠϧŠĐĶĪĨ–—˜™š›œžŸ ĄĒĪĨͧĻĐŠ >non-portable (uses existentially quantified data constructors) provisional daan@cs.uu.nlÅÆŦĮČŽ­ŪŊ°ÉĘËĖŦŽ­ŪŊ°Ŧ°Ž­ŪŊŦŽ­ŪŊ°Í    !"#$%&'()*+,--./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžžŸ ĄĒĢĪĨͧĻĐŠŦŽ­ŪŊ°ą ē ģ ī ĩ ķ · ļđšŧž―ž2ūŋĀÁÂÃÄÅÆĮČÉ Ę Ę Ë Ė Í Î Ï ÐŅparsec-2.1.0.0!Text.ParserCombinators.Parsec.Pos#Text.ParserCombinators.Parsec.Error"Text.ParserCombinators.Parsec.Prim"Text.ParserCombinators.Parsec.Char(Text.ParserCombinators.Parsec.Combinator"Text.ParserCombinators.Parsec.Expr#Text.ParserCombinators.Parsec.Token&Text.ParserCombinators.Parsec.Language"Text.ParserCombinators.Parsec.PermText.ParserCombinators.Parsec SourcePosColumnLine SourceNamenewPos initialPos sourceName sourceLine sourceColumn incSourceLineincSourceColumn setSourceName setSourceLinesetSourceColumnupdatePosString updatePosChar ParseErrorMessageExpectUnExpect SysUnExpectmessageCompare messageString messageEqerrorPos errorMessageserrorIsUnknownnewErrorUnknownnewErrorMessageaddErrorMessage setErrorPossetErrorMessage mergeErrorshowErrorMessagesState stateInputstatePos stateUser GenParserParser<|>getStatesetState updateState getPositiongetInput setPositionsetInputgetParserStatesetParserState parseFromFile parseTestparse runParserpzerotrytoken tokenPrim tokenPrimExlabellabels unexpectedmanyskipManytokens CharParseroneOfnoneOfspacesspacenewlinetabupperloweralphaNumletterdigithexDigitoctDigitcharanyCharsatisfystringchoiceoption optionMaybeoptionalbetween skipMany1many1sepBysepBy1 sepEndBy1sepEndByendBy1endBycountchainrchainlchainl1chainr1anyTokeneof notFollowedBymanyTill lookAhead OperatorTableOperatorPostfixPrefixInfixAssoc AssocRight AssocLeft AssocNonebuildExpressionParser TokenParser identifierreservedoperator reservedOp charLiteral stringLiteralnaturalintegerfloatnaturalOrFloatdecimal hexadecimaloctalsymbollexeme whiteSpaceparensbracesanglesbracketssquaressemicommacolondotsemiSepsemiSep1commaSep commaSep1 LanguageDef commentStart commentEnd commentLinenestedComments identStart identLetteropStartopLetter reservedNamesreservedOpNames caseSensitivemakeTokenParser haskellStyle javaStyleemptyDefhaskell haskellDefmondrian mondrianDef PermParser<||><$$><|?><$?>permuteforcePosReplyErrorOkConsumedEmpty parsecMap parsecReturn parsecBind parsecFail parsecZero parsecPlusbase Data.MaybeMaybeupdateParserState manyAccum haskell98DefBranchPermptestnewpermaddaddoptmapPerms