open Sys;;
  
open Unix;;
  
open Misc;;
  

  
exception Path of string * string;;
  
let path_sep = ":";;
  
let path_sep_regexp = Str.regexp (Str.quote path_sep);;
  
let list_of_path = Str.split path_sep_regexp;;
  

  
let path_of_list paths =
  
  (* Un nom de fichier dans un chemin ne doit pas contenir le séparateur... *)
  
  let check s =
  
    if Str.string_match path_sep_regexp s 0 then
  
      let pos = Str.match_beginning() in
  
      let mes = Printf.sprintf "Separator string found at position %d" pos in
  
      raise (Path (smes)) in
  
  List.iter check paths;
  
  String.concat path_sep paths;;
  

  
let get_path () = list_of_path (getenv "PATH");;