Thông thường khi tôi đang chơi với mã Haskell, tôi phân phát các thứ bằng chú thích loại và undefined
.Không được xác định ở cấp loại
foo :: String -> Int
foo = undefined
Có loại "không xác định" loại mà tôi có thể sử dụng theo cách tương tự không?
(Lý tưởng nhất, kết hợp với một loại chú thích)
type Foo :: * -> *
type Foo = Undefined
suy nghĩ thêm về các chủ đề tương tự: có cách nào để tôi còn sơ khai ra typeclass hợp với nhiều loại được tạo ra theo cách này? Một cách dễ dàng hơn nhiều so với cách lý thuyết sau đây?
instance Monad Foo where
return = undefined
(>>=) = undefined
Tuyệt vời! Chính xác những gì tôi đang tìm kiếm; nó thậm chí còn thuận tiện hơn vì bạn không phải viết 'Foo = Undefined'! Và chữ ký loại! Awesomesauce. –
Tôi tin rằng nó không giống như bí danh loại - khi bạn giới thiệu một Dữ liệu mới, không có cơ hội nào là 'Foo a = a'. Vì vậy, nó không giống như mã của câu hỏi, có thể là tốt. – gatoatigrado
@gatoatigrado: Tôi nghĩ rằng yêu cầu này chỉ là một trình giữ chỗ cho một loại chưa được viết, không phải là một bí danh loại trên mỗi giây, và sau đó đây là một giải pháp thích hợp. Dù sao, vui mừng được giúp bạn Dan! – danr