2011-04-26 62 views

回答

31

當前不是。

你想要什麼最接近的命令是:info

:信息名稱...

顯示有關給定的姓名(或名稱)的信息。例如,如果name是一個類,那麼將打印類方法及其類型;如果name是一個類型構造函數,那麼它的定義將被打印;如果名稱是一個函數,那麼它的類型將被打印。如果名稱已從源文件加載,GHCi也將在源文件中顯示其定義的位置。

對於類型和類別,GHCi還總結了提及它們的實例。爲了避免顯示不相關的信息,僅當(a)其頭部提及名稱時顯示實例,以及(b)實例中提到的所有其他事物由於以下情況而處於範圍內(合格的或其他):模塊命令。

像這樣:

Prelude> :info ($) 
($) :: (a -> b) -> a -> b -- Defined in GHC.Base 
infixr 0 $ 

您可以但是,看到由黑線鱈工具生成,在Hackage標識符的來源。

  1. Look up the module on Hackage
  2. Click on the source link

注意? 「SRC」 在lambdabot一個有效的命令,在#haskell IRC頻道,並做你所期望。

> ?src ($) 
> f $ x = f x 
+0

非常感謝。我最近纔開始學習Haskell,並不知道lambdabot。這可以很好地作爲替代方案。 – 2011-04-26 08:00:24

+1

@franco hades:我相信lambdabot也可以從Hackage本地安裝,所以你不需要在IRC上使用它(除非你想,#haskell是一個不錯的頻道)。 – 2011-04-26 13:46:10

+0

非常酷 - 它也說你可以在ghci中嵌入lambdabot!然而,這些說明並不十分清楚。 – stites 2016-01-14 14:43:44

4

我不這麼認爲。您可以使用:i一點點的更多信息(中綴運營商和數據結構等更多有用的),但沒有定義:

ghci> :i repeat 
repeat :: a -> [a]  -- Defined in GHC.List 

您可以使用hoogle快速找到一個標準庫函數的文檔,在右邊有一個鏈接去源。儘管如此,它仍然需要點擊幾下。

5

不,不能這樣做。 Haskell初學者可以做一些有趣的事情:

  • 關於HTML haddock文檔,點擊「source」...研究源代碼。
  • :browse找到所有由模塊
  • 使用:help了明顯的效果
  • 使用hoogle Web界面導出的定義的搜索功能,或安裝hoogle本地!
  • 利潤!
+1

':browse'不給你定義。它給你一個模塊的功能和類型列表。 – Tshimanga 2015-11-09 19:21:32

+0

如果我說「所有符號」或「頂級定義」,您會更高興嗎?隨意編輯。 – 2015-11-09 19:39:48

相關問題