Saya telah membaca banyak utas tentang bahasa pemrograman fungsional belakangan ini (hampir dalam satu tahun terakhir). Saya benar-benar ingin memilih dan mempelajarinya secara menyeluruh.
Semester [kursus] terakhir, saya telah diperkenalkan dengan Skema. Saya menyukainya. Mencintai kesederhanaan yang ekstrim dari sintaksis, prinsip homoiklikositas , makro ( higienis dan non-higienis), n-arity prosedur, dll.
Masalah dengan Skema adalah bahasa akademik. Saya tidak berpikir itu benar-benar digunakan di lingkungan produksi. Saya juga tidak percaya bahwa sangat baik untuk memiliki resume kami. Jadi, saya telah mencari-cari alternatif. Ada banyak dari mereka dan entah bagaimana mereka semua tampaknya memiliki tingkat popularitas yang sama.
Beberapa pemikiran tentang beberapa bahasa fungsional lain yang saya pertimbangkan:
- Clojure: Kedengarannya hebat karena bisa mengakses dunia Jawa, berorientasi pada skalabilitas dan konkurensi, tetapi bukankah dunia Jawa sedang berada di ujung tanduk saat ini? Saya sudah mengenal Java dengan cukup baik, tetapi apakah lebih bijak untuk menambahkan lebih banyak energi tergantung pada JVM?
- Haskell: Sepertinya bahasa yang sangat dihargai, tetapi dari apa yang saya baca, itu juga lebih merupakan bahasa akademik.
- Lisp: Sudah ada sejak selamanya. Tampaknya memiliki sebagian besar apa yang saya suka dari Skema. Ini memiliki komunitas besar. Untuk apa yang saya [pikir saya] tahu, itu mungkin bahasa pemrograman fungsional yang paling banyak digunakan dalam industri (?).
- F #: Tidak terlalu mempertimbangkannya. Saya bukan penggemar MS. Saya tidak punya uang untuk membayar perangkat lunak mereka (saya bisa membebaskan mereka dari aliansi universitas, tetapi saya lebih cenderung memilih solusi berbasis komunitas). Meskipun ... saya kira itu akan menjadi pilihan berorientasi karier terbaik.
Malam ini, aku condong ke arah Lisp. Satu minggu yang lalu, itu adalah Haskell. Sebelum itu adalah Clojure. Pada tahun lalu, saya melakukan beberapa Skema untuk bersenang-senang, bukan memaksanya karena alasan yang Anda tahu. Sekarang saya ingin serius (tentang belajar satu, tentang melakukan proyek nyata dengan itu, tentang mungkin akhirnya secara profesional bekerja dengannya). Masalah saya adalah saya perlu mempelajari semuanya sebelum dapat memilih satu.