Tuple Pada OCaml
Record tanpa nama
Tuple seperti Array dapat menyimpan banyak nilai dan berukuran tetap setelah dibangkitkan (fixed length) serta seperti Record tanpa pengenal dan kolom tanpa nama.
Perbedaan Tuple dengan Array yaitu Tuple dapat menyimpan nilai dengan tipe data berbeda antara nilai (heterogen).
Tuple dibangkitkan dengan sepasang parentesis ()
dan di pisah dengan koma
(<nilai>,<nilai>,<nilai>);;
Struktur tipe (signature type) Tuple
<tipe data> * <tipe data> * <tipe data>
Contoh pembangkitan Tuple
let biodata = ("Minato Aqua",17,true,"Baqua");;
(* val biodata : string * int * bool * string = ("Minato Aqua", 17, true, "Baqua") *)
Elemen tuple dapat di pecah (destruct) dengan membuat format Tuple untuk nilai tuple di ambil.
let (nama,umur,_,panggilan) = biodata;;
(*
val nama : string = "Minato Aqua"
val umur : int = 17
val panggilan : string = "Baqua"
*)
_
untuk membuang nilai yang tidak ingin di ambil dari tuple, nilai nama
,umur
dan panggilan
mengambil nilai sesuai dengan posisi nilai pada Tuple.
Tuple bisa digunakan untuk mengembalikan nilai lebih dari satu dari fungsi secara heterogen.