Bahasa inti Haskell sangat sederhana. Berasal dari latar belakang OO, kesulitan utama adalah beradaptasi dengan paradigma fungsional murni.
Saat belajar Haskell "dasar", saya selalu menganggap ekstensi bahasa sebagai mainan untuk orang-orang CS atau sebagai percobaan untuk versi bahasa yang akan datang (seperti from future import ???
dalam python).
Namun ketika saya mulai melihat kerangka kerja web seperti Yesod, saya menemukan bahwa banyak file sumber memerlukan antara 3 & 4 ekstensi. Beberapa terlihat cukup sederhana (StringOverload). Lainnya benar-benar mengintimidasi (GADT, Type Famillies, Template Haskell). Dokumentasi mereka terhubung ke makalah penelitian, yang menakutkan bagi seseorang yang mengharapkan untuk belajar "hanya" perpustakaan baru.
Apakah perlu mempelajari ekstensi bahasa GHC agar produktif di Haskell? Jika Anda menyewa pengembang Haskell untuk aplikasi produksi, apakah Anda akan meminta pengetahuan seperti itu?
Jawaban:
Iya. Dan itu berlaku untuk semua bahasa / alat. Dengan pengetahuan inti / dasar Anda dapat memecahkan masalah kontes online, mungkin proyek universitas kecil, tapi jelas bukan aplikasi dunia nyata.
Itu sekarang tergantung pada apakah Anda memiliki seseorang dengan Anda yang dapat membagikan pengetahuan ini. Jika ya, maka orang itu dapat meningkatkan karyawan baru. Jika tidak, maka Anda harus mendapatkan orang tersebut dengan pengetahuan terlebih dahulu. Dan lagi ini berlaku untuk teknologi baru.
Tentu saja Anda juga dapat mencoba untuk merekrut orang-orang yang memiliki pengetahuan mendalam di Haskell. Tetapi Haskell relatif baru dalam industri dan mengingat sangat sedikit proyek komersial yang dilakukan di sekitarnya, menemukan orang seperti itu akan sulit. Cara efektif untuk membangun tim profesional di Haskell, adalah dengan merekrut orang yang tahu dasar dan mau bekerja di Haskell, dan kemudian mendidik mereka.
sumber