Tôi đã có một cuộc đụng độ tên giữa hai mô-đun Haskell khác nhau muốn sử dụng cùng một toán tử kết hợp (<*>
). Báo cáo Haskell 98 nói rằngLàm cách nào để viết tên đủ điều kiện của một biểu tượng trong Haskell?
modid.varsym
được phép, nhưng tôi không thể làm cho nó hoạt động. Trong toàn bộ của họ vào đây là Test.hs
:
module Test
where
import qualified Test2 as T
three = T.<*>
và Test2.hs
:
module Test2
where
(<*>) = 3
Nhưng cố gắng để biên dịch kết quả trong một thông báo lỗi:
Test.hs:6:12: parse error on input `T.<*>'
tôi đã cố gắng T.(<*>)
nhưng điều đó không làm việc hoặc.
Làm cách nào tôi có thể tham chiếu đến tên biểu tượng được xác định trong mô-đun được nhập bởi import qualified
?
Weird thực sự, nhưng tôi đã cố gắng để làm ví dụ như đơn giản càng tốt. –