Estimated hours taken: 0.1
Branches: main, release
extras/xml/*.m:
Remove some non-abstract instance declarations from module
interfaces; the compiler no longer supports them.
Replace uses of ':' as a module qualifier.
Remove duplicate module imports.
Estimated hours taken: 1
NEWS:
library/io.m:
Add `io__input_stream_foldl', `io__input_stream_foldl_io'
and `io__input_stream_foldl2_io', which apply a predicate
to each character of an input stream in turn.
Add a new result type `io__maybe_partial_res' which is
used for operations which can return a partial result
like io__input_stream_foldl* and io__read_file.
tests/general/io_regression.m:
extras/xml/xml.cat.m:
extras/xml/xml.parse.m:
extras/xml/tryit.m:
extras/morphine/source/coverage_util.m:
Fix uses of io__read_file and io__read_file_as_string.
tests/general/Mmakefile:
tests/general/io_foldl.{m,exp}:
Test case.
Estimated hours taken: 100
Add an XML parser to the extras directory
extras/xml/README:
A short readme describing the parser.
extras/xml/Mmake:
The Mmake file for the sample program.
extras/xml/tryit.m:
A sample program that just parses the files named on the command line.
extras/xml/xml*.m:
The parser itself.
extras/xml/unicode.m:
A bunch of functions that return the unicode values for numerous ascii
symbols.
extras/xml/parsing.m:
The parsing combinator set used by the xml parser.