let basename path = 
    match List.rev path with  
      hd :: tl ->
      [hd]
    | [] ->
      raise FilePathEmpty