Pengenalan Haskell
Penjelasan
Haskell adalah bahasa pure functional programming — SEMUA fungsi bersifat murni (pure): dengan input yang sama, selalu menghasilkan output yang sama, tanpa efek samping (side effect) tersembunyi. Berbeda dari bahasa imperatif (PHP, Python, Java), Haskell tidak punya konsep "mengubah" variabel atau loop `for` biasa — semuanya diekspresikan lewat fungsi dan rekursi. Haskell juga bersifat lazy (nilai baru dihitung ketika benar-benar dibutuhkan) dan static typed dengan type inference yang sangat kuat — compiler bisa menebak hampir semua tipe tanpa anotasi eksplisit, tapi tetap mengecek semuanya secara ketat saat kompilasi.
Contoh Konsep
-- Ini komentar di Haskell, pakai dua tanda minus
main :: IO ()
main = putStrLn "Halo, Haskell!"
-- Dijalankan dengan: runghc nama_file.hs, atau dikompilasi dulu dengan ghc
Praktikum
Tulis program Haskell sederhana yang mencetak "Belajar Haskell di CompileDaily" memakai putStrLn.
Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.
Tips
Jangan khawatir kalau sintaks Haskell terasa sangat berbeda dari bahasa yang biasa kamu pakai — filosofi "pure function, tanpa mutasi" ini justru yang membuat kode Haskell lebih mudah dinalar dan diuji, meski kurva belajarnya lebih curam di awal.