Parametric Higher-Order Abstract Syntax for Mechanized Semantics by OCaml