let rec name = function
  | [] -> ""
  | [x] -> x
  | x::xs ->
      let buffer = Buffer.create 80 in
      Buffer.add_string buffer x ;
      List.iter
        (fun y -> if y <> "" then 
           ( Buffer.add_char buffer '-' ; 
             Buffer.add_string buffer y )) xs ;
      Buffer.contents buffer