Tại sao Mẫu Haskell bỏ qua khai báo dẫn xuất độc lập trong báo giá?Tuyên bố truy xuất độc lập trong báo giá Bản mẫu Haskell
{-# LANGUAGE TemplateHaskell, StandaloneDeriving #-}
data Test a = Test a
$([d| deriving instance Show a => Show (Test a); f x = x |])
ghci> :l Test.hs
[1 of 1] Compiling Main (Test.hs, interpreted)
Ok, modules loaded: Main.
ghci> :t f
f :: t -> t
ghci> Test 1 :: Test Int
<interactive>:18:1:
No instance for (Show (Test Int)) arising from a use of `print'
Possible fix: add an instance declaration for (Show (Test Int))
In a stmt of an interactive GHCi command: print it
Đúng, tôi nhận thấy sự vắng mặt của người đồng sáng lập độc lập trong thư viện. Đã hy vọng để có được nó thông qua các trích dẫn. – leventov
Tôi nghi ngờ điều này là do phát sinh độc lập xảy ra trong giai đoạn biên dịch sớm hơn so với Mẫu Haskell. Trong renamer thay vì typechecker, hoặc một cái gì đó. –
Nó sẽ hoạt động kể từ GHC 7.10, xem https://ghc.haskell.org/trac/ghc/ticket/8100. –