let is_infix =
let first_chars =
[ '='; '<'; '>'; '|'; '&'; '$'; '@'; '^'; '+'; '-'; '*'; '/';
'%'; '\\' ]
and infixes =
List.fold_right StringSet.add infix_lidents StringSet.empty
in
fun s ->
(StringSet.mem s infixes) ||
((s <> "") && (List.mem s.[0] first_chars))