Lambda adalah function literal tanpa nama. Kotlin membuat lambda sebagai first-class citizen sehingga functional programming terasa alami.
Pelajari lambda expression di Kotlin — function literal yang disimpan dalam variabel dan dipanggil layaknya function biasa.
Buka → # Lambda SyntaxBedah anatomi lambda Kotlin: parameter, arrow `->`, body multi-statement, dan ekspresi terakhir sebagai nilai kembalian.
Buka → # Trailing LambdasPelajari trailing lambda — idiom Kotlin yang menempatkan lambda di luar tanda kurung saat menjadi parameter terakhir.
Buka → # it ParameterPelajari parameter implisit `it` pada lambda satu parameter — idiom ringkas yang wajib dipakai dengan hati-hati saat lambda bersarang.
Buka → # Anonymous FunctionsPelajari anonymous function — function literal dengan keyword `fun` eksplisit yang memberi kontrol penuh atas tipe kembalian dan perilaku return.
Buka → # Higher-Order FunctionsPelajari higher-order function — function yang menerima atau mengembalikan function lain, dasar pemrograman fungsional di Kotlin.
Buka → # Function TypesPelajari function type di Kotlin — dari `(Int, Int) -> Int` hingga nullable return, suspend function type, dan receiver function type.
Buka → # Receiver Function TypesPelajari receiver function type `A.() -> B` yang membuat `this` di dalam lambda merujuk ke receiver — dasar DSL Kotlin.
Buka → # Extension LambdasPelajari extension lambda — kombinasi extension function dengan lambda yang disimpan dalam variabel bertipe receiver function type.
Buka → # ClosuresPelajari closure — lambda yang menangkap variabel dari lingkup luar, dari read-only hingga mutable dengan implikasi lifecycle.
Buka → # inline FunctionsPelajari inline function — fitur yang menyisipkan body function ke setiap pemanggil, mengurangi alokasi lambda, dan membuka fitur seperti reified.
Buka → # Callable ReferencesPelajari callable reference — sintaks `::namaFungsi`, `String::length`, dan bound reference untuk merujuk function tanpa lambda.
Buka → # Function CompositionPelajari function composition — menggabungkan function kecil menjadi pipeline dengan `compose` dan `andThen`, plus dasar currying.
Buka → # Scope FunctionsPengenal lima scope functions Kotlin — let, run, with, apply, also — beserta perbandingan receiver, return, dan use case masing-masing.
Buka → # letPelajari scope function `let` — receiver `it`, mengembalikan lambda result. Cocok untuk null-safety dan transformasi nilai.
Buka → # runPelajari scope function `run` — receiver `this`, mengembalikan lambda result. Cocok untuk eksekusi block pada receiver dan kombinasi dengan `with`.
Buka → # withPelajari scope function `with` — bukan extension function. Receiver `this`, mengembalikan lambda result. Cocok untuk mengelompokkan panggilan.
Buka → # applyPelajari scope function `apply` — receiver `this`, mengembalikan objek. Cocok untuk konfigurasi objek dan builder pattern.
Buka → # alsoPelajari scope function `also` — receiver `it`, mengembalikan objek. Cocok untuk side effect seperti logging tanpa mengganggu chain.
Buka → # Functional Design PatternsPelajari pola desain fungsional di Kotlin — map/filter/reduce, function composition, immutability, dan perbandingan dengan Haskell.
Buka →