mirror of
https://github.com/Mercury-Language/mercury.git
synced 2025-12-14 05:12:33 +00:00
- Reduce the amount of detail about library changes that is listed
Estimated hours taken: 0.75 Branches: main NEWS: - Reduce the amount of detail about library changes that is listed in the "HIGHLIGHTS" section. - In the "DETAILED LISTING" section, list a few library interface changes that had previously not been mentioned, and mention the need to declare solver types using ":- solver type".
This commit is contained in:
47
NEWS
47
NEWS
@@ -26,32 +26,13 @@ Changes to the Mercury compiler:
|
||||
with `mmc --make'.
|
||||
|
||||
Changes to the Mercury standard library:
|
||||
* We've added a new module, cord, for sequences with O(1) consing and
|
||||
concatenation.
|
||||
* Several new functions have been added to the string module, namely
|
||||
elem/2, unsafe_elem/2, chomp/1, lstrip/1, lstrip/2, rstrip/1, rstrip/2,
|
||||
strip/1, prefix_length/2, and suffix_length/2.
|
||||
* We've added two new modules: cord, for sequences with O(1) consing and
|
||||
concatenation, and array2d, for two-dimensional arrays.
|
||||
* New procedures have been added to many of the existing standard library
|
||||
modules. Most notably, these include procedures for creating
|
||||
directories and symbolic links, for checking file types and file
|
||||
accessibility, for detecting floating point infinities and NaNs.
|
||||
* The dir module now handles Microsoft Windows pathnames correctly.
|
||||
* dir__split_name and dir__basename are now semidet, not det.
|
||||
* We've added some new predicates and functions to the dir module:
|
||||
basename_det/1,
|
||||
expand_braces/1,
|
||||
is_directory_separator/1,
|
||||
make_directory/4,
|
||||
make_single_directory/4,
|
||||
foldl2/6,
|
||||
parent_directory/0,
|
||||
path_name_is_absolute/1,
|
||||
path_name_is_root_directory/1,
|
||||
recursive_foldl2/7.
|
||||
* We've added several new predicates to the io module:
|
||||
have_symlinks/0,
|
||||
make_symlink/4,
|
||||
follow_symlink/4,
|
||||
check_file_accessibility/5,
|
||||
file_type/4,
|
||||
input_stream_foldl2_io_maybe_stop/{6,7},
|
||||
binary_input_stream_foldl2_io_maybe_stop/{6,7}.
|
||||
|
||||
Portability improvements:
|
||||
* Nothing yet.
|
||||
@@ -103,8 +84,14 @@ Changes to the Mercury language:
|
||||
For details, see the "Higher-order impurity" section of the "Impurity"
|
||||
chapter of the Mercury Language Reference Manual.
|
||||
|
||||
* The (undocumented) support for dynamic modes and constraint solving
|
||||
has changed. Types which may have dynamic modes must now be declared
|
||||
using ":- solver type" instead of ":- type".
|
||||
|
||||
Changes to the Mercury standard library:
|
||||
|
||||
* We've added a new library module, `array2d', for two-dimensional arrays.
|
||||
|
||||
* We've added a new module, cord, for sequences with O(1) consing and
|
||||
concatenation. A cord is essentially a tree structure with data stored
|
||||
in the leaf nodes. Joining two cords together to construct a new cord
|
||||
@@ -149,10 +136,8 @@ Changes to the Mercury standard library:
|
||||
elem/2, unsafe_elem/2, chomp/1, lstrip/1, lstrip/2, rstrip/1, rstrip/2,
|
||||
strip/1, prefix_length/2, and suffix_length/2.
|
||||
|
||||
* We've added a new library module, `array2d'.
|
||||
|
||||
* We've added some new predicates, list__map2_foldl and list__foldl4,
|
||||
to list.m.
|
||||
* We've added some new predicates, list__map2_foldl, list__map_foldl3,
|
||||
and list__foldl4 to list.m.
|
||||
|
||||
* We've added some new predicates, map__common_subset and map__foldl3,
|
||||
to map.m.
|
||||
@@ -169,6 +154,10 @@ Changes to the Mercury standard library:
|
||||
|
||||
* getopt.m now accepts a `maybe_string_special' option type.
|
||||
|
||||
* We've added a predicate, copy_mutvar, to store.m.
|
||||
|
||||
* We've added a function, clk_tck, to time.m.
|
||||
|
||||
* builtin.m now contains types and insts `unify' and `compare' for use
|
||||
in defining user-defined equality and comparison predicates.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user