Sau khi đọc http://clojure.org/rationale và các so sánh hiệu suất khác giữa Clojure và nhiều ngôn ngữ, tôi bắt đầu nghĩ rằng, ngoài việc dễ sử dụng, tôi không nên viết mã bằng Python nữa mà thay vào đó là Clojure. Thật ra, tôi bắt đầu cảm thấy vô trách nhiệm vì không học Clojure, thấy nó có lợi.
Liệu nó có ý nghĩa? Tôi không thể sử dụng hiệu quả tất cả các lõi bằng cách sử dụng một ngôn ngữ cấp bách hơn như Python, hơn là một phương ngữ Lisp hoặc ngôn ngữ chức năng khác? Dường như tất cả các lợi ích của nó đến từ việc sử dụng dữ liệu bất biến, tôi không thể làm điều đó trong Python và có tất cả các lợi ích?
Tôi đã từng bắt đầu học một số Lisp thông thường, đọc và thực hiện hầu hết tất cả các bài tập từ một cuốn sách tôi mượn từ thư viện trường đại học của tôi (tôi thấy nó khá hay, mặc dù nó phổ biến thấp trên Amazon). Nhưng, sau một thời gian, tôi thấy mình phải vật lộn quá nhiều để làm một số việc đơn giản. Tôi nghĩ rằng có những thứ bắt buộc hơn trong bản chất của chúng, điều đó gây khó khăn cho việc mô hình hóa những thứ đó một cách có chức năng.
Vậy Python có mạnh như Clojure để xây dựng các ứng dụng tận dụng tương lai đa lõi mới này không?
Lưu ý rằng tôi không nghĩ rằng việc sử dụng semaphores, cơ chế khóa hoặc cơ chế tương tranh tương tự khác là những lựa chọn thay thế tốt cho việc song song hóa 'tự động' của Clojure.