- Penulis membagikan perjalanan meninggalkan Haskell, bahasa pemrograman fungsional yang telah ia gunakan selama 10 tahun sebagai software engineer.
- Penulis tertarik pada kemampuan Haskell untuk memahami kode secara simbolik dan aljabar, serta sistem tipenya yang kuat.
- Sistem tipe Haskell memungkinkan pemeriksaan tipe yang ketat tanpa terasa terlalu membatasi atau berisik, sehingga memudahkan penulisan dan pemeliharaan kode.
- Penulis sangat menghargai kemampuan Haskell untuk mengekspresikan invarians melalui tipe, yang membuat compiler memeriksa ulang logika sehingga meningkatkan keamanan dan ketepatan kode.
- Meski memiliki kelebihan tersebut, penulis meninggalkan Haskell karena tiga alasan utama: keinginan akan kebaruan gaya, tooling yang canggung, dan perubahan yang terus berlanjut.
- Kebaruan gaya merujuk pada kecenderungan komunitas Haskell untuk bereksperimen dengan abstraksi baru, yang meski inovatif dapat membuat pemeliharaan kode menjadi lebih sulit.
- Penulis menilai tooling Haskell sebagai "lumayan", tetapi menyebut tidak ada alat yang semudah dan sestabil
cargo milik Rust.
- Perubahan yang terus berlanjut di Haskell, khususnya revisi berkala yang tidak kompatibel ke belakang, menambah friksi dalam penggunaan bahasa tersebut.
- Meski sudah meninggalkan Haskell, penulis tetap mengakui kekuatannya, yaitu kemampuan melakukan refactor kode secara aljabar, sistem tipenya, dan ekosistem library yang deklaratif.
- Penulis menyimpulkan bahwa apakah seseorang sebaiknya memakai Haskell bergantung pada tujuan masing-masing, dan merekomendasikan untuk mempelajarinya agar menjadi programmer yang lebih baik, tetapi mengingatkan agar berhati-hati menjadikannya sebagai bahasa utama karena tantangan yang ia jelaskan.
1 komentar
Komentar Hacker News
base, dipandang sebagai masalah karena memaksa perubahan dependensi saat versi GHC baru dirilis.