2012-03-15 34 views
7

Tôi đang viết một số mã trong haskell phải được gọi từ C. Có một công cụ hoặc thư viện trong Haskell đơn giản hóa việc viết mã FFI wrapper cho các hàm haskell cần được xuất.haskell tạo mã wrapper xuất FFI

Ví dụ: công cụ được cung cấp chức năng haskell được xuất sẽ đảm nhiệm (tạo mã bao bọc) của ánh xạ các loại haskell cho các loại Foreign.C chính xác, v.v. theo yêu cầu. Nó cũng sẽ chăm sóc tạo ra các con trỏ chính xác khi lập bản đồ [Int] loại vv Giống như những gì người hỏi đang cố gắng ở đây Automatic conversion of types for FFI calls in Haskell. Nhưng chỉ có nó có sẵn như một thư viện?

Trả lời

1

Tôi đã viết một công cụ có tên là Hs2lib để thực hiện việc này. Nếu bạn đang ở trên cửa sổ bạn đang ở may mắn, nó sẽ làm tất cả mọi thứ bao gồm biên dịch mã vào một dll và tạo c/C++ hoặc C# wrappers. Nếu bạn đang sử dụng Linux, tôi e rằng tôi chưa nhận được bước biên dịch để làm việc, nhưng nó vẫn tạo ra các thông tin marshalling yêu cầu và khai báo. Bạn có thể nói với nó để giữ chúng bằng cách sử dụng cờ -T.

Các vấn đề liên quan