Kenalan dengan Haskell
Bagi mereka yang sudah akrab
dengan bahasa pemrograman imperatif seperti C, C++, atau Java, menggunakan
Haskell akan membuka pandangan baru karena bahasa ini mengadopsi pendekatan
fungsional yang berbeda.
Haskell adalah contoh bahasa
pemrograman yang benar-benar berbasis fungsional. Secara sederhana, dalam
Haskell, semua tindakan yang Anda ingin lakukan harus dicapai melalui
pemanggilan fungsi. Ini adalah salah satu aspek yang membedakan Haskell dari
sebagian besar bahasa pemrograman lainnya yang biasanya bersifat imperatif,
seperti C, C++, atau Java.
Dalam bahasa pemrograman yang
mengadopsi pendekatan imperatif, tugas atau pekerjaan diselesaikan dengan
memberikan komputer urutan perintah yang harus dijalankan, dan komputer
menjalankan perintah tersebut satu per satu sesuai urutan yang telah ditentukan.
Ketika komputer menjalankan
perintah-perintah ini, tindakan tersebut dapat mengubah status atau keadaan.
Misalnya, Anda mengatur variabel bernama "skor" menjadi 5. Kemudian,
Anda menggunakan variabel ini dalam proses perhitungan. Setelah itu, Anda
memutuskan untuk mengubah nilai "skor" menjadi 10. Dengan pendekatan
ini, Anda memiliki aliran kontrol yang memungkinkan Anda untuk melakukan
serangkaian tindakan berulang.
Di sisi lain, Haskell adalah
salah satu contoh bahasa pemrograman yang mengadopsi pendekatan fungsional
murni. Dalam pemrograman fungsional, Anda tidak perlu menginstruksikan komputer
tentang cara melakukan tugas tertentu (how), melainkan cukup memberikan
informasi tentang apa yang perlu diolah (what).
Mari Belajar dari Studi Kasus
Sebagai ilustrasi, konsep
faktorial dari sebuah angka adalah hasil perkalian dari semua angka dari 1
hingga angka tersebut, sedangkan jumlah deret bilangan adalah angka pertama
ditambahkan dengan jumlah semua angka lainnya, dan seterusnya. Anda dapat memodelkan
operasi-operasi ini dengan fungsi dalam bahasa pemrograman. Kami akan lebih
mendalam tentang topik ini nanti.
Selain itu, dalam bahasa
pemrograman Haskell, variabel bersifat immutable (tidak dapat diubah). Artinya,
setelah Anda pertama kali mendefinisikan nilai variabel, nilainya tidak dapat
diubah. Bahkan, dalam konteks pemrograman fungsional seperti Haskell, konsep
"variabel" seperti yang ditemukan dalam bahasa pemrograman lainnya
tidak berlaku. Variabel dalam Haskell adalah lebih sebagai penamaan untuk nilai
tertentu. Misalnya, ketika Anda menulis "skor = 5," ini berarti Anda
mendefinisikan bahwa "skor" adalah 5, bukan bahwa "skor"
saat ini menyimpan nilai 5 dan dapat berubah ke nilai yang berbeda di kemudian
hari.
0 Komentar