Paths are private, and owned by the functions below
val relative : t -> string -> t
relative path string
build a path relative to an existing one
We should gradually add some more functions to handle common dirs here such the theories directories or share files. Abstracting it hereere does allow to use system-specific functionalities
exists file
checks if file
exists
val to_string : t -> string