Export the interval map module type.
Ocaml interface to the Unix pseudo-terminal functions
Extended_list.fold_left_termis no longer needed - we now have
Update to follow
N.B. Some interface changes occured in Core which are repercuted in this
package, they are not all list in this file though.
Switched to PPX.
Interval_map.twith monad operations.
interval_map_intf.mlfile to try to make the documentation
This mostly constitutes splitting out the core operations into a separate
module type earlier in the file, so that their documentation occurs before
the various more specific module types in reading order.
Various bits of documentation have been tweaked with examples or laws.
Add underscores to color print names
Improve and uniformize the behavior of colorprintf functions at the cost of changing the type slightly
Fix core_extended stubs on openbsd
Add a module whose type
'a tacts as a container of ordered items of type 'a
'a list) but which supports efficient append operations.
Sometimes called a Rope, or Concatenable_list.
Expose the constructors of
Ascii_table.Align.tso that we can write
Column.create ~align:Left ...
Fix sexp diffing on records
The wrong comparaison was leading to huge diff as soon as one field was
missing on one side
Interval_mapa more complete set of operations.
Core_extended.Sexp.filter_record, which has been superseded by
Intervalmodule, with the type of intervals used
in an interval map.
sprintffunctions, and changed formatting to
Quickcheck_deprecated. It's replaced
by Janecheck, which for now is a separate library in the core_extended
package, but will soon be merged into core.
Selectormodule to its own library. This is for internal
reasons related for code review; it is included as a library within the
core_extended package for now, but may move to another home in the
Extended_unix.terminal_width : int Lazy.t.
Sendmail.sendadditional optional arguments:
?preserve_euid:boolargument, which causes
Array.Access_control, now that there is
Added functions to
Low_level_debugto get a sexp or string
representation of any type.
This could be handy when debugging polymorphic code.
Fixed a bug in
String.is_substringby replacing the OCaml implementation
with a call to libc
memmemruns in 20% of the time, incurs minimal GC pressure, is
portable among UNIXen that we target, AND it's clearer than the ML
gettid, which is now available in
Fast_int_divmodule, which speeds up integer division by
a fixed divisor.
Float_refmodule, which is like
float refbut faster for
sets due to bypassing the write barrier.
Benchmark results on Sandy Bridge:
| [float_ref.ml:] float ref set | 2_886.94ns | 8.00w | |
| [float_ref.ml:] Float_ref.set | 355.76ns | 6.00w | |
| [float_ref.ml:] float ref get | 415.52ns | 6.00w | |
| [float_ref.ml:] Float_ref.get | 416.19ns | 6.00w | |
Bin_io_utils.Wrapped.t, which defines an
'a t with bin_io
that supports size-prefixed serialization and deserialization.
Wrappedhas two useful submodules,
efficient handling of size-prefixed bin-io values in cases where
serialization can be bypassed. See the comments in the module for
Int.gcdusing binary GCD in C, for improved performance.
Bin_io_utils.Serialized, which stores a value in memory as its
Writing such a value just blits the value.
Added some functions to
Core_extendedinto its own library.
Flang, added ordering to fields, and added
maxto the language.
Set_lang, a DSL for sets with constants, union, intersection,
This prevents errors when selecting on file descriptors numbered
Syslogmodule. There is now
Unix.Syslogin core instead;
the APIs are not compatible, but they are similar.
Cleaned up the
Service_command.acquire_lock_exn, for acquiring a service's lock.
Olangto round-trip via sexps, i.e.
(t_of_sexp (sexp_of_t t)) = t.
Sexp.load_sexp_with_includes; one should use the new
Flang-- terms over a field.
Olang-- predicates over an ordered set.
This handles when a group is deleted and its gid remains in the
cache, which causes
Unix.Group.getbygid_exnto fail because the
gid no longer resolves to a group.
Stats_reporting.Delta, for recording deltas of values.
Sexpmodule, added ability to expand and compress bash-like brace wildcards.
Added stable versions of types contained in the
Labeled arguments, put them in the right order (old before new), and
rework the code to follow the same convention, and produce the output
where deletions precede insertions.
Shellfunctions, made the amount of captured stderr/stdout
Sexp, changed and renamed
val load_includes_in_sexp : ?max_depth:int -> Sexp.t -> Sexp.t
val load_sexp_with_includes: ?max_depth:int -> ?buf:string -> string -> Sexp.t
Previously the only option was to print to