car & cdr are built-in:
> let foo = [1;2;3;4];;
val foo : int list = [1; 2; 3; 4]
> List.head foo;;
val it : int = 1
> List.tail foo;;
val it : int list = [2; 3; 4]
(you can also use the older (ML) names, i.e., List.hd and List.tl)
so are cons, append, foreach & mapcar:
> 25::foo;;
val it : int list = [25; 1; 2; 3; 4]
> foo @ [12];;
val it : int list = [1; 2; 3; 4; 12]
> List.append foo [12];;
val it : int list = [1; 2; 3; 4; 12]
más por la manaña...