let sort ?(by=`id) ?(reverse=false) (bibset:set) : set =
let may_reverse =
if reverse then fun f a b -> f b a else fun f a b -> f a b in
let cmp ea eb =
let authors_style = `acm in
may_reverse
String.compare
(field_or_empty ~authors_style by ea)
(field_or_empty ~authors_style by eb) in
Ls.sort ~cmp bibset