Tôi chỉ là một lập trình viên mới (tôi làm điều đó cho vui) và tôi đến từ thế giới của Python/C++/các ngôn ngữ thủ tục khác, và cách giải quyết vấn đề thủ tục. Tôi đã yêu sự đơn giản của OCaml sau khi bị boggled bởi phong cách chức năng của nó trong khoảng một tuần. Vì tôi không phải là kỹ sư hay nhà toán học, một số sách hoặc tài nguyên hữu ích nào sẽ giúp chuyển đổi quá trình mặc dù của tôi để suy nghĩ nhiều hơn về mặt chức năng? Chỉ là các bài tập chuẩn hoặc có những cuốn sách sẽ giúp tôi suy nghĩ trong những thuật ngữ đó?Bao quanh đầu của tôi OCaml
Trả lời
Tôi là người hâm mộ lớn của "The Little MLer" phiên bản ML của "The Little Schemer" (nee "The Little Lisper") Toàn bộ cuốn sách có định dạng câu hỏi trả lời, dẫn bạn qua ngôn ngữ.
Những bất lợi lớn là nó không thực sự bao gồm (IIRC) các 'O' một phần của OCaml ... nhưng nó bao gồm phần ML thực sự tốt ...
'Giới thiệu về Mục tiêu CAML' bởi Jason Hickey cung cấp một giới thiệu tốt để OCaml, và có sẵn trực tuyến: http://files.metaprl.org/doc/ocaml-book.pdf
Nó không cụ thể cho OCaml, nhưng nếu bạn muốn học cách suy nghĩ theo một cách chức năng, một nơi tuyệt vời để bắt đầu là với John Hughes của giấy Why Functional Programming Matters .
Bài viết này nhấn mạnh các tính năng của lập trình chức năng không có sẵn trong OCaml. Ví dụ, không thể viết hàm 'reduce'. Có công bằng khi nói OCaml chỉ có phần chức năng? – kalu
@kalu Tôi không tin rằng bạn không thể viết giảm trong OCaml. – Marcin
Làm thế nào để "giảm bớt" này trở nên bí ẩn? –
- 1. Đang cố gắng quấn quanh đầu của tôi
- 2. Mô-đun OCaml: bao gồm VÀ mở?
- 3. Thu thập đầu ra của lệnh ngoài bằng OCaml
- 4. có bọc viền bao quanh văn bản
- 5. nhật thực: Khối bao quanh nếu
- 6. Đại biểu, không thể có được đầu của tôi xung quanh họ
- 7. Nhưng tôi không _want_ để bao quanh các tuyên bố với một khối try/catch!
- 8. Tại sao tôi nên bao quanh một cách rõ ràng với "không được chọn"?
- 9. Làm thế nào để tôi có được một đa giác bao quanh điểm?
- 10. vim-surround không hoạt động đối với tôi. s phím xóa thay vì bao quanh
- 11. Cách tạo ra một thế giới bao quanh trong Box2D
- 12. C# thuộc tính để bao quanh với try - catch
- 13. Bao gói văn bản xung quanh một hình trong LaTeX
- 14. Có một trình bao bọc tốt xung quanh ILGenerator không?
- 15. Làm thế nào để có được đầu của bạn xung quanh C + + liên kết/phụ thuộc?
- 16. lấy tọa độ của một hình chữ nhật bao quanh khung công tác
- 17. OCaml mục cấp đầu với phần mở rộng cú pháp
- 18. cách bao gồm XML nút trong đầu ra văn bản XSLT của tôi?
- 19. là bắt đầu..thêm vào đường cú pháp OCaml?
- 20. In OCaml AST dưới dạng Mã OCaml
- 21. OCaml: Các chức năng của cây
- 22. Định nghĩa của Sets trong ocaml
- 23. Một thiết kế của functors trong OCaml
- 24. Loại OCaml của toán tử cộng
- 25. Các thông số có tên của Ocaml
- 26. Đầu ra của trình bao linux thành html
- 27. Ocaml - Lazy.force
- 28. Tại sao destructor của tôi không bao giờ chạy?
- 29. Ocaml - Emacs tuareg mode
- 30. Tôi có thể kiểm tra trình bao bọc được quản lý xung quanh mã C bằng cách nào?
trùng lặp: http://stackoverflow.com/questions/30516/learning-ocaml-fast – nlucaroni