Câu hỏi này bắt đầu ra từNếu SML.NET có functors tại sao không thể F #?
- dịch của tôi về "ML for the Working Programmer" (WorldCat) bởi L. C. Paulson để F # trong đó sử dụng functors cho các ví dụ.
- Mong muốn cuối cùng để dịch "Purely Functional Data Structures" (WorldCat) bởi Chris Okasaki, trong đó sử dụng functors.
- Đọc "CATEGORIES TYPES AND STRUCTURES - An Introduction to Category Theory for the working computer scientist" (WorldCat) của Andrea Asperti và Giuseppe Longo.
- Không hiểu tất cả, chủ yếu là lý thuyết danh mục.
SML.NET có thể làm functors và làm việc với Microsoft .NET.
* Xem: SML.NET User Guide Phần 4.8.2 Các loại lớp và các hàm?
Tôi tiếp tục thấy rằng F # không thể thực hiện các functors thực sự vì một số hạn chế trong Microsoft .NET.
* Can ML functors be fully encoded in .NET (C#/F#)?
* Any workaround for functor?
Vì vậy, nếu có thể làm SML.NET functors trên NET thì tại sao không thể F #? SML.NET đã làm gì mà F # không thể?
Tôi càng tìm hiểu về các giáo viên đến từ lý thuyết thể loại, tôi càng thấy rõ vẻ đẹp của họ và mong muốn có chúng trong F #.
EDIT
Trong một sự theo đuổi để hiểu rõ hơn về mối quan hệ giữa lý thuyết thể loại và lập trình chức năng nhìn thấy những Q&A tại CS:StackExchange.
Vì mọi người có câu hỏi này nhìn chằm chằm, tôi đang thêm một liên kết đến bài báo này vì họ có thể tìm thấy giấy quan tâm. [Vật lý, Cấu trúc liên kết, Logic và Tính toán: Đá Rosetta] (http://arxiv.org/pdf/0903.0340v3.pdf) –
Quan tâm: [Generics of a Higher Type] (http: //adriaanm.github. io/files/higher.pdf) và [Loại cao hơn trong Scala là gì?] (http://stackoverflow.com/questions/6246719/what-is-a-higher-kinded-type-in-scala) và [Thêm Generics bậc cao hơn vào F # - (Loại lớp)] (https://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/2228766-add-higher-order-generics-to-f-type- classes-) –
Quan tâm: [Quá tải toán tử toàn cục trong F #] (http://stackoverflow.com/questions/19682432/global-operator-overloading-in-f) và [FsControl - Thư viện cơ sở F # với chuẩn ad-hoc chức năng đa hình trên các kiểu nguyên thủy.] (https://github.com/gmpl/FsControl) –