Haskell 如何找到我导入的模块的源代码

Haskell 如何找到我导入的模块的源代码,haskell,module,Haskell,Module,如何找到我导入的代码的源代码。就像我做的那样 λ <Prelude>: import Graphics.EasyPlot λ <Prelude Graphics.EasyPlot>: λ:导入图形.EasyPlot λ : 我如何找到那个代码。我不是指代码的在线副本(谷歌非常擅长用它来索引黑客行为),而是指我可以在我的系统上编辑的地方。原因是它有点问题,我想尝试修复它。(我可能会提交一个补丁,但我只想先修复它供我自己使用。)正如@ThomasDuBuisson所

如何找到我导入的代码的源代码。就像我做的那样

λ <Prelude>: import Graphics.EasyPlot 
λ <Prelude Graphics.EasyPlot>: 
λ:导入图形.EasyPlot
λ : 

我如何找到那个代码。我不是指代码的在线副本(谷歌非常擅长用它来索引黑客行为),而是指我可以在我的系统上编辑的地方。原因是它有点问题,我想尝试修复它。(我可能会提交一个补丁,但我只想先修复它供我自己使用。)

正如@ThomasDuBuisson所提到的,你们很多人不一定会在你们的系统上找到它。我通常做的一件事就是用阴谋集团把它取回来:

cabal fetch package-name
它下载包的tarball。一旦你取得了它,整个来源将在阴谋集团放置它的路径下。就我而言,它是(
/home/sibi/.cabal/packages/hackage.haskell.org/package name
)。然后你可以解构,然后从已经存在的阴谋集团文件中构建它


也就是说,您可能应该使用项目使用的版本控制系统,正如@bheklillr所指出的。

代码不一定在您的系统上,您可能只有一个接口文件和对象文件。如果您要提交修补程序,最好是通过库作者使用的任何版本控制系统来实现,而不是修改可能安装到系统中的代码。通常这是Git、DARC或Subversion。我可能不会提交补丁,它可能是某种黑客。另外,我不认为它是一个接口文件,因为我知道它是haskell code()@PyRulez。当你安装它时,它将被编译成一个二进制文件。你也可以使用
cabal unpack
(旧的cabal)或
cabal get
(新的cabal版本)在当前文件的子目录中解包directory@bennofs谢谢,我不知道!