Greetings!
I wanted to announce the initial release of 6 utility packages to the opam-repository. They are dependencies to some other ongoing projects I have, perhaps some will find them useful.
These are very early days for this software. Please feel welcome to opening issues or discussions tickets if you are inclined.
Thank you @mseri , @avsm & @shonfeder for your help in making these libraries available!
Below you’ll find short descriptions with links to the packages home pages. Thank you!
Fpath_sexplib0 only depends on fpath
and sexplib0
. It defines a single module, Fpath_sexplib0
, which is designed to be opened to shadow the Fpath
module to add small helpers and a sexp_of
serializer to it. The package also introduces three new modules to the scope: Fpart
, Absolute_path
and Relative_path
to increase type-safety when manipulating paths that are known to be relative or absolute.
Fpath_base further extends fpath-sexplib0
and adds a dependency on base. It is designed to be compatible with Base-style containers such as Map
, Set
, Hashtbl
, Hash_set
.
Loc is an OCaml library to manipulate code locations, which are ranges of lexing positions from a parsed file.
File_rewriter is an OCaml library for applying small rewrites to tweak or refactor your files. It provides a convenient interface to apply surgical textual substitutions on the fly, while navigating the contents of a file through an abstract representation containing code locations.
Sexps_rewriter is a specialized version of the file-rewriter
library dedicated to rewriting sexp files, such as dune config files.
Provider is an OCaml library for creating Traits and Interfaces. It allows you to define the functionality needed by a library without committing to a specific implementation - in essence : dynamic dispatch. Provider is a pattern featured in the Eio
project (Eio.Resource
). I wanted to make it reusable in other projects - in particular I am currently using it as the parametrization story of vcs
. This package had already been available for a little while already but was still unannounced.