OCamlでコードを書いているときに、リスト操作をすることがあるのですが、

4 :: [1; 2; 3];;

みたいに、 リストの先頭に対して要素を追加したリストを作成する方法はわかるのですが、リストの最後に対して追加したリストを作る方法がわかりません。とりあえずの方法として:

[1; 2; 3;] @ [4];;

という風にしているのですが、たかだか要素を後ろに追加するだけのために、リストを作っているのは、変な印象を受けます。

もし直接、リストの最後に要素を追加する方法があれば教えていただければと思います。