Study
Elixir

List di Elixir

Penjelasan

List di Elixir dibuat dengan `[1, 2, 3]`, secara internal dibangun dari HEAD (elemen pertama) dan TAIL (sisanya) — mirip konsep list di Haskell. Operator `++` menggabungkan dua list, `--` menghapus elemen dari list. Karena immutable, semua operasi "mengubah" list sebenarnya menghasilkan list BARU.

Contoh Konsep

buah = ["Apel", "Jeruk", "Mangga"]

[kepala | ekor] = buah   # pattern matching head/tail
IO.puts(kepala)           # "Apel"
IO.inspect(ekor)          # ["Jeruk", "Mangga"]

buahBaru = buah ++ ["Anggur"]   # list baru, buah asli tidak berubah
IO.inspect(buahBaru)

length(buah)   # 3

Praktikum

Buat list kota berisi 3 nama kota, ambil head dan tail-nya dengan pattern matching [kepala | ekor], lalu cetak keduanya.

Editor Latihan

Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.

Tips

Pola `[kepala | ekor] = list` adalah fondasi rekursi list di Elixir — sangat mirip `(x:xs)` di Haskell, karena Elixir memang meminjam banyak ide functional programming dari sana.