Bên cạnh những câu hỏi chung trong tiêu đề,Lập trình chức năng áp dụng cho mô phỏng như thế nào?
- Làm thế nào để lập trình chức năng và ngôn ngữ chức năng tiếp cận lĩnh vực mô phỏng, mà dường như bị xử lý một cách tự nhiên nhất bởi ngôn ngữ hướng đối tượng?
- Có các ví dụ mã nguồn mở của các mô phỏng phức tạp được viết theo phong cách chức năng (chủ yếu) không?
- Những thay đổi về quan điểm nào mà một lập trình viên OO cần, để tiếp cận các mô phỏng từ một mô hình chức năng?
Tôi hỏi điều này trong khi tìm hiểu cách người sáng tạo Clojure Rich Hickey đặc biệt tìm cách chế ngự "sự phức tạp ngẫu nhiên" của lập trình OO và trạng thái có thể thay đổi, ví dụ: Sự tách biệt danh tính và trạng thái của Clojure có ý nghĩa rất nhiều (Ants.clj của Hickey nằm trong danh sách nghiên cứu). Một lĩnh vực khác có liên quan là sử dụng lập trình chức năng cho các trò chơi, thường được mô phỏng với rất nhiều "thứ" trạng thái khắp nơi; có một số bài viết/giấy tờ viết về FP và trò chơi, nhiều hơn sẽ được chào đón.
Có lẽ các lập trình viên chức năng có kinh nghiệm có thể cung cấp thêm nền tảng và tư vấn về cách định hướng lại suy nghĩ của một người theo phong cách chức năng, đặc biệt cho mô phỏng. Cảm ơn trước!
Cảm ơn tất cả, vì các phản hồi hữu ích của bạn cho đến thời điểm này. Dường như không có một tham chiếu "kinh điển" về cách chuyển đổi từ mô phỏng mô hình OO sang mô phỏng mô hình chức năng, nhưng khi đọc qua tất cả các liên kết và mã được chia sẻ, có lẽ tôi sẽ gây nguy hiểm khi tự viết lên. :) – limist
Tôi đã hỏi một câu hỏi tương tự cách đây vài năm và tôi bao gồm liên kết tới câu hỏi dưới đây vì có một số câu trả lời hay và có thể hữu ích cho những người khác quan tâm đến chủ đề này. http://stackoverflow.com/questions/718935/is-a-functional-language-a-good-choice-for-a-flight-simulator-how-about-lisp –
@Ballpark - cảm ơn vì liên kết, tôi đã có nhìn thấy câu hỏi của bạn trước đó và học được từ nó quá. – limist