Ứng dụng của lập trình hàm và hướng phát triển của 3 ngôn ngữ hàm phổ biến

Việc áp dụng các ngôn ngữ hàm là một phản ứng của các developer trước các áp lực ngày càng gia tăng và việc phải giải quyết nhiều vấn đề hơn trong thời đại hiện nay. Để làm điều này, họ phải giảm bớt những thứ không cần thiết như số trạng thái mọi nơi-pervasive và hiệu ứng phụ-side effects, các nguyên nhân chính gây ra sự phức tạp và lỗi chương trình. Việc giảm số lượng trạng thái trong các chương trình viết bằng ngôn ngữ phi hàm sẽ đặc biệt dễ dàng và nhanh chóng hơn với một ngôn ngữ có đặc trưng và mặc định là lập trình hàm.

Ngày nay hầu như mọi ngôn ngữ lập trình đều áp dụng các tính năng từ các ngôn ngữ hàm. Microsoft cũng cung cấp công nghệ truy vấn tích hợp ngôn ngữ (Linq) cho lập trình hàm.

3 ngôn ngữ hàm phổ biến nhất đang thu hút sự chú ý của các developer và vẫn được cải tiến hiện nay là F#, Sacala và Clojure.

Scala là ngôn ngữ 13 tuổi do Odersky sáng lập, được sử dụng chủ yếu trong khoa học dữ liệu. được hỗ trợ trên máy ảo Java (JVM) và theo ước tinh có khoảng gần nửa triệu người dùng.

Trong ngắn hạn Scala sẽ được tối ưu hóa cho Java 8, trong đó các hướng dẫn mã byte từ bản nâng cấp Java tiêu chuẩn mới nhất sẽ cho phép Scala tạo ra nhiều mã có hiệu năng cao hơn. Trong dài hạn, Scala sẽ có một hệ thống dọn dẹp, các macro an toàn hơn và sẽ có thêm nhiều nền tảng hỗ trợ Scala. Một trình biên dịch LLVM back end cũng đang được xem xét. (LLVM – low level virtual machine là một cấu trúc biên dịch được viết bằng C++ nhằm tối ưu hóa các khoảng thời gian biên dịch, liên kết, chạy và nhàn rỗi của các chương trình viêt bằng ngôn ngữ tùy ý). Ngoài ra trong kế hoạch còn có những cải tiến khác như cải tiến tính khả dụng của Scala.js, trình biên dịch Scala sang JavaScript.

Clojure là ngôn ngữ 9 tuổi cũng dựa trên JVM, đang được dùng trong các lĩnh vực giải trí, bán lẻ, phần mềm, tài chính.

Rich Hickey, developer Clojure, CTO công ty hệ thống thông tin Cognitect kiêm phụ trách một nội dung chính trên blog Clojure, cho biết Clojure đã có nhiều ứng dụng rộng rãi trong mọi lĩnh vực như phân tích và xử lý giao dịch, big data, hoạt động mạng, phân tích dự đoán, tìm kiếm, an ninh và quà tặng tiêu dùng.

F# là ngôn ngữ 11 tuổi do Don Syme ở Microsoft Research sáng tạo và được giám sát bởi quỹ F#, đã được sử dụng trong nhiều loại ứng dụng lẫn mọi nền tảng Linux, OS X, Android, iOS, Windows, các trình duyệt. F# được coi là ngôn ngữ hàm đầu tiên bạn nên học vì nó là di sản của các ngôn ngữ khác. Nó cũng mang đặc điểm của ngôn ngữ hàm là hỗ trợ lập trình hướng đối tượng và hoạt động tốt với C# lẫn Visual Basic.

Stephen cho biết nền tảng sắp tới của F# là .Net Core, một phiên bản module xuyên nền tảng nguồn mở của .Net Framework. Microsoft cũng đang thiết kế bổ sung thêm ngôn ngữ String để dễ dàng viết các strings trên F#.

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

CAPTCHA ImageChange Image