Study
Elixir

Operator & Pipe Operator (|>)

Penjelasan

Elixir punya operator standar (`+ - * / == != and or not`), tapi fitur paling khasnya adalah PIPE OPERATOR `|>` — meneruskan hasil ekspresi kiri sebagai ARGUMEN PERTAMA fungsi di kanan. Ini membuat rangkaian transformasi data terbaca dari atas ke bawah / kiri ke kanan, bukan bertumpuk kurung dari dalam ke luar.

Contoh Konsep

# Tanpa pipe, dibaca dari dalam ke luar (membingungkan)
String.upcase(String.trim("  compiledaily  "))

# Dengan pipe, dibaca berurutan kiri ke kanan
"  compiledaily  "
|> String.trim()
|> String.upcase()

# Rangkaian pipe untuk mengolah list
[1, 2, 3, 4, 5]
|> Enum.filter(fn x -> rem(x, 2) == 0 end)
|> Enum.map(fn x -> x * 10 end)
# [20, 40]

Praktikum

Tulis ulang String.upcase(String.trim(" budi ")) memakai pipe operator |> supaya lebih mudah dibaca.

Editor Latihan

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

Tips

Pipe operator adalah salah satu alasan kode Elixir terasa sangat mudah dibaca untuk rangkaian transformasi data — begitu terbiasa, kamu akan cenderung menghindari fungsi bersarang dalam-dalam dan lebih memilih rantai pipe.