在GHC中,有没有办法打印模块的输出?

在GHC中,有没有办法打印模块的输出?

问题描述:

例如,如果我想查看Test.QuickCheck有哪些输出,是否可以向GHCI发出命令来执行此操作?在GHC中,有没有办法打印模块的输出?

是的,有。键入:browse Test.QuickCheck(或任何模块想要)将打印所有出口:

Prelude> :browse Test.QuickCheck 
(.&.) :: 
    (Testable prop1, Testable prop2) => prop1 -> prop2 -> Property 
(==>) :: (Testable prop) => Bool -> prop -> Property 
(><) :: (Gen a -> Gen a) -> (Gen a -> Gen a) -> Gen a -> Gen a 
class Arbitrary a where 
    arbitrary :: Gen a 
    shrink :: a -> [a] 

... <snip> ... 

vectorOf :: Int -> Gen a -> Gen [a] 
whenFail :: (Testable prop) => IO() -> prop -> Property 
whenFail' :: (Testable prop) => IO() -> prop -> Property 
within :: (Testable prop) => Int -> prop -> Property 

对于GHCI的命令的完整列表,请the documentation