Discussion of these changes can be found on the Mercury developers
mailing list archives from June 2018.
COPYING.LIB:
Add a special linking exception to the LGPL.
*:
Update references to COPYING.LIB.
Clean up some minor errors that have accumulated in copyright
messages.
extras/*/*.m:
Replace the use of '__' as a module qualifier in the rest of
the extras.
s/io\.state/io/ in the extras.
Use '=' instead of is/2 in a spot.
boehm_gc/.gitignore:
Ignore .obj files
extras/xml/xml.dtd.m:
extras/xml/xml.parse.m:
Change the name of functor ('1') in the multiplicity/0 type
to one. The former name does not (yet) work with the C# grade.
samples/.gitignore:
Ignore library output and sample executables.
samples/c_interface/standalone_c/.gitignore:
Ignore mercury_lib_int output files.
samples/c_interface/standalone_c/Makefile:
chmod 0644.
samples/c_interface/.gitignore:
Ignore object files and executables.
samples/java_interface/.gitignore:
Ignore Java class files and executables.
samples/lazy_list/.gitignore:
samples/muz/.gitignore:
samples/rot13/.gitignore:
Ignore executables.
samples/rot13/rot13_concise.m:
Update call to index_det to use string.det_index.
Added comments to clarify type inference.
samples/solutions/.gitignore:
Ignore executables.
samples/solutions/all_solutions.m:
samples/solutions/n_solutions.m:
samples/solutions/one_solution.m:
samples/solutions/some_solutions.m:
chmod 0644.
samples/solver_types/.gitignore:
Ignore executables.
samples/solver_types/sudoku.m:
Output the solution in a 3x3 grid.
Branches: main
Change the argument order of many of the predicates in the map, bimap, and
multi_map modules so they are more conducive to the use of state variable
notation, i.e. make the order the same as in the sv* modules.
Prepare for the deprecation of the sv{bimap,map,multi_map} modules by
removing their use throughout the system.
library/bimap.m:
library/map.m:
library/multi_map.m:
As above.
NEWS:
Announce the change.
Separate out the "highlights" from the "detailed listing" for
the post-11.01 NEWS.
Reorganise the announcement of the Unicode support.
benchmarks/*/*.m:
browser/*.m:
compiler/*.m:
deep_profiler/*.m:
extras/*/*.m:
mdbcomp/*.m:
profiler/*.m:
tests/*/*.m:
ssdb/*.m:
samples/*/*.m
slice/*.m:
Conform to the above change.
Remove any dependencies on the sv{bimap,map,multi_map} modules.
Estimated hours taken: 0.5
Branches: main
Fix compilation problems in the extras distribution caused by recent
changes.
extras/stream/stream.m:
Provide a definition for the type stream/1.
extras/*/*.m:
Conform to the recent changes to the standard library.
Estimated hours taken: 0.2
Branches: main and 0.12
extras/xml/parsing.m:
extras/xml/tryit.m:
extras/xml/xml.ns.m:
extras/xml/xml.parse.m:
Fix errors in the xml parser due to the use of obsolete notation.
Estimated hours taken: 0.1
Branches: main, 0.12
extras/xml/parsing.m:
extras/xml/xml.parse.m:
Delete the type '' ---> '' and replace instances of
it in these files with the unit type from std_util.
The compiler no longer accepts the former type and
we aren't going to allow it in future anyway.
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.