Với sự nhấn mạnh hiện hành về lập trình đồng thời và song song với hệ thống đa lõi, đã có tập trung nhiều hơn về ngôn ngữ lập trình chức năng, mà theo một mô hình lập trình khác nhau nhiều từ được cung cấp bởi ngôn ngữ bắt buộc. Sự khác biệt cơ bản giữa
ngôn ngữ mệnh lệnh và chức năng là ngôn ngữ chức năng không duy trì trạng thái. Đó là, một khi một biến đã được định nghĩa và được gán một giá trị, giá trị của nó là bất biến, nó có thể không thay đổi. Bởi vì ngôn ngữ chức năng không cho phép nhà nước có thể thay đổi, họ không cần phải được quan tâm với các vấn đề như điều kiện chủng tộc và sự bế tắc. Về cơ bản, hầu hết các vấn đề được đề cập trong chương này là không tồn tại trong ngôn ngữ chức năng.
Một số ngôn ngữ chức năng hiện nay được sử dụng, và chúng tôi một thời gian ngắn đề cập đến
hai của họ ở đây: Erlang và Scala. Các ngôn ngữ Erlang đã đạt được đáng kể
sự chú ý vì nó hỗ trợ đồng thời và dễ dàng mà nó
có thể được sử dụng để phát triển các ứng dụng chạy trên hệ thống song song. Scala là một
ngôn ngữ chức năng đó cũng hướng đối tượng. Trong thực tế, phần lớn các cú pháp của
Scala là tương tự như các ngôn ngữ hướng đối tượng phổ biến Java và C #. Độc giả
quan tâm trong Erlang và Scala, và biết thêm chi tiết về chức năng ngôn ngữ
nói chung, được khuyến khích tham khảo tài liệu tham khảo ở phần cuối của chương này
để tham khảo thêm.
đang được dịch, vui lòng đợi..