Binding & Tipe Data Dasar
Penjelasan
Di Haskell, `nama = nilai` bukan "variabel" dalam artian bahasa imperatif — ini disebut BINDING, sekali diikat ke suatu nilai, tidak bisa diubah lagi (immutable, mirip `val` di Kotlin/Scala tapi ini SATU-SATUNYA cara di Haskell). Tipe data dasar: `Int` (bilangan bulat), `Double` (desimal), `Bool` (True/False), `Char`, dan `String` (sebenarnya cuma alias untuk `[Char]`, list karakter).
Contoh Konsep
nama :: String
nama = "Budi"
umur :: Int
umur = 25
aktif :: Bool
aktif = True
-- nama = "Ani" -- TIDAK BISA, nama sudah diikat sebelumnya (immutable)
Praktikum
Buat binding judul :: String dan jumlahBab :: Int, lalu cetak keduanya dengan putStrLn dan print di dalam main.
Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.
Tips
Anotasi tipe (`nama :: String`) sebenarnya OPSIONAL karena Haskell bisa menebaknya sendiri (type inference), tapi menuliskannya eksplisit membuat kode lebih mudah dibaca dan jadi dokumentasi otomatis.