Tuple Pada OCaml

Record tanpa nama

Tuple Pada OCaml

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.

Referensi

  1. OCaml Tutorial: List, Array, Tuple
  2. CSE 130,OCaml Introduction: Tuples and Lists