Fungsi Anonim & Capture Operator (&)
Penjelasan
Fungsi anonim dibuat dengan `fn parameter -> ekspresi end`, dipanggil dengan titik sebelum kurung: `fungsi.(argumen)`. Untuk fungsi anonim sederhana, capture operator `&` menyediakan bentuk yang lebih ringkas — `&1`, `&2`, dst merujuk ke argumen posisi ke-1, ke-2, dan seterusnya.
Contoh Konsep
tambah = fn a, b -> a + b end
tambah.(3, 4) # 7, panggil pakai .()
# Bentuk ringkas dengan capture operator &
tambahRingkas = &(&1 + &2)
tambahRingkas.(3, 4) # 7, sama persis
# Sangat umum dipakai bersama Enum.map
Enum.map([1, 2, 3], &(&1 * 2)) # [2, 4, 6]
Enum.map([1, 2, 3], fn x -> x * 2 end) # sama, versi panjang
Praktikum
Buat fungsi anonim kuadrat dengan fn...end yang menghitung x*x, lalu buat versi ringkasnya memakai capture operator &.
Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.
Tips
Pakai `fn...end` biasa kalau logikanya butuh beberapa baris atau nama parameter yang jelas, dan capture operator `&(...)` untuk ekspresi SANGAT pendek yang sudah jelas maksudnya tanpa nama parameter.