Retrieving elements of a set as a concatenated string

The simplest solution is to use String.concat:

let final_string = String.concat ", " (SS.elements set_obj)

To skip the intermediate list, you could use

let final_string =
  let buf = Buffer.create 128 in
  let sep = ref "" in
  SS.iter (fun s -> Buffer.add_string buf !sep; sep := ", "; Buffer.add_string s) set_obj;
  Buffer.contents set_obj
2 Likes