运行 更改文件后 repl 中的一个 haskell 程序

Running a haskell program in the repl after changing the file

我有一个 haskell 程序定义了

module Lib
( someFunc
) where

 

someFunc :: IO ()
someFunc  = do
print "Hello world"

使用堆栈打开 REPL 会将此库加载到上下文中。

*Main Lib Paths_hs> someFunc
"Hello world"

更改函数、写入文件并执行函数后,我得到了相同的结果

someFunc :: IO ()
someFunc  = do
print "Bye bye"
*Main Lib Paths_hs> someFunc
"Hello world"

但我希望函数 someFunc 能够 return 我声明的新值 "Bye bye"

我已经试过了运行 stack build但是没有avail.Now,我可以重新打开REPL,并且有新的功能,但是我不想失去我的当前的历史。无论如何我可以将我新编译的程序加载到当前的 REPL 中,或者将活动会话历史加载到新的 REPL

根据 docs,您可以使用 :reload 指令(或 :r 很快)。