Gần đây tôi đã nhận thấy rằng các ngôn ngữ lập trình chức năng đang trở nên phổ biến . Gần đây tôi đã thấy cách Tiobe Index cho thấy sự phổ biến của họ so với năm ngoái mặc dù hầu hết trong số họ thậm chí không đạt được 50 ngôn ngữ phổ biến nhất theo chỉ số này.
Và điều này đã xảy ra trong một thời gian khá dài. Lập trình hàm đơn giản là không trở nên phổ biến như các mô hình khác (tức là lập trình hướng đối tượng).
Tuy nhiên, tôi đã thấy sự quan tâm trở lại đối với sức mạnh của lập trình chức năng, và bây giờ, đa lõi ngày càng phổ biến hơn, các nhà phát triển đã bắt đầu quan tâm đến các mô hình đồng thời khác đã được khám phá trước đây bởi các ngôn ngữ như Haskell và Erlang.
Tôi thấy rất quan tâm đến thực tế là mặc dù họ không có sự chấp nhận của cộng đồng đáng kể, ngày càng có nhiều ngôn ngữ thuộc loại này tiếp tục xuất hiện. Clojure (2007), Scala (2003), F # (2002) chỉ là ba ví dụ của thập kỷ gần đây.
Bản thân tôi đã đầu tư thời gian để học Haskell và Scala. Và tôi tìm thấy tiềm năng lớn trong mô hình mà đối với tôi là mới mặc dù đã ở ngoài đó quá lâu.
Và tất nhiên, câu hỏi lớn nhất của tôi là liệu có ai trong số này sẽ trở nên đủ phổ biến để xem xét đưa bất kỳ nỗ lực nào vào họ hay không, nhưng đây là câu hỏi mà ngay cả Mandrake cũng không thể trả lời, mặc dù tất cả những người ồn ào đang làm về họ.
Điều tôi muốn hỏi là:
- Trong trường hợp nào tôi nên xem xét một ngôn ngữ lập trình chức năng phù hợp hơn để thực hiện một nhiệm vụ nhất định? Bên cạnh vấn đề đa lõi phổ biến gần đây của lập trình song song.
- Nếu tôi quyết định chuyển sang một ngôn ngữ lập trình chức năng mà bạn sẽ coi là những cạm bẫy lớn nhất mà tôi sẽ phải đối mặt? (Bên cạnh thay đổi mô hình và khó đánh giá hiệu suất do đánh giá lười biếng).
- Với rất nhiều ngôn ngữ lập trình chức năng ngoài kia, làm thế nào bạn chọn một ngôn ngữ phù hợp hơn với nhu cầu của bạn?
Bất kỳ khuyến nghị cho nghiên cứu tiếp theo sẽ được chào đón nhiều hơn.
Tôi đã tìm kiếm trên mạng các ý kiến, và có vẻ như tất cả sự phổ biến đổi mới này xuất phát từ ý tưởng rằng bây giờ chúng ta sắp sửa vượt qua Luật Moore và các ngôn ngữ lập trình chức năng sẽ đến và cứu chúng ta một cách anh hùng. Nhưng nếu đây là trường hợp, tôi sẽ nói có nhiều xác suất của các ngôn ngữ phổ biến hiện có thích ứng với mô hình.
Một số bạn, với nhiều kinh nghiệm làm việc mỗi ngày với các ngôn ngữ này có lẽ, có thể cung cấp cái nhìn sâu sắc hơn về chủ đề này. Tất cả các ý kiến của bạn sẽ được đánh giá tốt hơn và xem xét cẩn thận.
Cảm ơn trước!