Next: Repl module, Previous: Types module, Up: Developer manual [Contents][Index]
Reader moduleis responsible for parsing input either from the interactive prompt or a file. (It only supports parsing string, other functionallity is implemented in the See Main module.
Hscheme uses Parsec library to parse input. Parsec is somewhat special, as it consumes input even if it eventually fails the match. The architecture of hscheme’s parser is modified to that architecture from the default Scheme parser and lexer.
readStrRead one expression from the string and parse it.
readManyRead all the expressions in the string and parse them.
datumThis is the root rule, all syntactic concepts are defined here.
syntaxParse #'expr into (syntax expr).
stringElementParse string elements, automatically unescape characters.
quoteParse 'expr into (quote expr).
quasiquoteParse `expr into (quasiquote expr).
unquoteParse ,expr into (unquote expr).
unquoteSplicingParse ,@expr into (unquote-splicing expr).
pairParse pairs and improper lists into ScmPair.
listParse lists.
vectorParse vectors.
peculiarParse peculiar identifiers.
symParse symbols.
subsequentinitialspecialInitialspecialSubsequentHelper functions for sym
numberParse numbers. Currently only integers are supported.
space'Modified Parsec space that matches multiline scheme comments.
spaces1, spacesHelpers for matching multiple spaces.
readInBasereadFloatCurrently unused. For a future use when other number types are supported.
Next: Repl module, Previous: Types module, Up: Developer manual [Contents][Index]