include Path

let dir ~fs mld_src = Path.(fs / (Filename.dirname @@ Path.native_exn mld_src))

let prepend prefix inpath' =
let inpath = Path.native_exn inpath' in
let inpath1 = Filename.dirname inpath ^ "/" ^ prefix ^ Filename.basename inpath in
fun ~fs -> Path.(fs / inpath1)

let change_ext ext inpath' =
let remove = Re.replace ~f:(fun _ -> "") @@ Re.compile @@ Re.seq Re.[str @@ Filename.extension @@ Path.native_exn inpath'; eos] in
fun ~fs -> Path.(fs / ((remove @@ Path.native_exn inpath') ^ ext))