2012-03-12 32 views
6

Tôi đang sử dụng VS11 Beta trên Win 8 Consumer Preview. Sau khi cài đặt VS11 Beta, tôi đã cài đặt F # 3.0 SDK. Nhưng tôi không thể tìm thấy FSharp.PowerPack.dll tương thích vì CodePlex chỉ cung cấp PowerPack cho F # 2.0.Cách lấy F # powerpack cho F # 3.0

Bất kỳ ý tưởng nào về cách giải quyết vấn đề này?

Trả lời

8

Bạn có thể tự biên dịch các nguồn PowerPack (chống lại F # 3.0), để tạo bản sao thư viện của riêng bạn.

Ngoài ra, tôi nghĩ rằng một chuyển hướng ràng buộc trong foo.exe.config cuối cùng của bạn, dọc theo dòng của

https://stackoverflow.com/a/9648673/19299

nhưng chuyển hướng 2.0.0.0 (PowerPack có sử dụng) để 4.3.0.0 (trong VS11 SDK) cũng sẽ hoạt động.

5

Ngoài những gì Brian nói, tôi nghĩ rằng cách dễ nhất để sử dụng chức năng từ F # PowerPack là chỉ sao chép mã nguồn cho các phần bạn đang sử dụng cho dự án của mình.

Thư viện PowerPack chứa khá nhiều chức năng và tôi thường chỉ sử dụng một hoặc hai phần. Nếu bạn đang tìm kiếm các thành phần như danh sách lười, bộ sưu tập song song (PLINQ), băm nhiều bản đồ hoặc phần mở rộng không đồng bộ, bạn thường có thể sao chép một hoặc hai tệp và bạn không phải xây dựng toàn bộ thư viện.

(Cũng lưu ý rằng hầu hết các chức năng LINQ từ F # PowerPack đã chuyển đến F # thư viện lõi trong F # 3.0)

3

Don Syme thời gian gần đây đã tải lên F# PowerPack 4.0.0.0 được biên dịch chống lại F # 3.0.

an MSI installer dành cho Windows. Ngoài ra còn có a zip archive mà thậm chí làm việc với MonoDevelop 3.0/F # 3.0 khi tôi cố gắng sử dụng nó trên Mac OS X. Vì vậy, nhiều thời gian và nỗ lực được lưu đặc biệt là khi cần sử dụng fslex/fsyacc để phân tích cú pháp.

+0

Làm thế nào để bạn cài đặt PowerPack trong Mac OS X và Linux? – mcandre

+0

Các dll không được ký vì vậy tôi tham chiếu đường dẫn tuyệt đối hoặc sao chép chúng vào thư mục dự án. Tôi đã thêm đường dẫn đến 'fslex/fsyacc' vào biến PATH. Tất nhiên, bạn luôn có thể biên dịch và cài đặt từ nguồn Github. – pad

1

Cập nhật cho F # 4.0: Tại thời điểm này F # PowerPack - hoặc ít nhất phần còn lại của chúng - nằm trên GitHub. Các thành phần chính đã được tách ra thành các dự án của riêng họ. (FsLex/FsYacc là những gì mang tôi đến đây.)