17 lines
485 B
OCaml
17 lines
485 B
OCaml
let mapjoin f l = (List.fold_left (fun a b -> a ^ (f b)) "" l)
|
|
let mapjoine e f = function
|
|
[] -> ""
|
|
| h::t -> (List.fold_left (fun a b -> a ^ e ^ (f b)) (f h) t)
|
|
|
|
exception FileAlreadyExists
|
|
let open_out_unless_exists path =
|
|
if Sys.file_exists path
|
|
then raise FileAlreadyExists
|
|
else open_out path
|
|
|
|
let run_in_other_directory tmppath cmd =
|
|
let prevdir = Sys.getcwd () in(
|
|
Sys.chdir tmppath;
|
|
let retval = Sys.command cmd in
|
|
(Sys.chdir prevdir; retval)
|
|
)
|