ghc

    5热度

    2回答

    随着GHC 8.0.2版下面的程序: import Debug.Trace f=trace("f was called")$(+1) main = do print $ f 1 print $ f 2 输出: f was called 2 3 它是预期的行为?如果是,为什么?我预计字符串f was called要打印两次,一次在2之前,一次在3之前打印一次。

    1热度

    1回答

    我对Haskell编程非常陌生,在使用Cabal创建我的第一个正确项目的过程中,我遇到了一个错误。 我在构建项目时遵循this教程。然而,当我到了一步,我不得不进入cabal install -j我得到了以下错误: cabal: Entering directory '.' Configuring CabalTest-0.1.0.0... Building CabalTest-0.1.0.0.

    1热度

    1回答

    我有以下一段代码似乎与GHC编译后运行时一贯挂起(虽然没有与-Werror构建失败)。 import Data.Aeson import Data.Scientific import qualified Data.HashMap.Strict as S myObj = Object $ S.fromList [("bla", Number $ pc * 100.0)]

    2热度

    1回答

    我使用System.IO.hIsTerminalDevice,以确定是否Handle是终端和应用着色,如果是这种情况。我注意到,使用CreatePipe为物流新工艺stdin和stdout派生进程时,这个函数返回True这似乎是错误的答案:一个管不应该被看作是一个终端。我试图追查看着System.IO和System.POSIX.IO源代码中的问题,但在C pipe函数结束了,带着我无处。 是否有更

    2热度

    1回答

    我已经使用stack构建工具安装了ghc。它编译我的项目。但是,当我进入nix-shell项目目录中,并希望从nix-shell编译项目中,我看到的错误是这样的: No compiler found, expected minor version match with ghc-8.0.2 这可以通过运行stack setup命令是固定的。但我担心这会再次安装ghc在我的机器上耗费更多空间等等。

    3热度

    1回答

    我想要一个'通用'地图数据结构,它可以通过提供自定义实例来高效地进行专门化,就像在the GHC manual section on type families中一样。 {-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE TypeFamilies #-} {-# LANGUAGE UndecidableInstances #-} module

    0热度

    1回答

    我看到以下,在 “堆叠构建foo” 的末尾: 进展:1/2 时 - 使用建立软件包foo-0.1.0.0: [路径 - to-GHC] --builddir = [路径到堆栈工作区] build lib:foo --ghc-options“-ddump -h -ddump-to-file” 用代码退出的进程:ExitFailure 1 而我不知道如何选择这些:-ddump-hi和-ddump-to

    2热度

    2回答

    我在Haskell播放the guessing game described in The Rust Programming Language book写了一个简单的程序: 下面是它的工作原理:该程序会产生一个随机整数1到100之间。然后会提示玩家进入一个猜测。输入猜测后,它会指示猜测是否过低或过高。如果猜测是正确的,游戏将打印祝贺并退出。 这里是我写的: import Control.Monad

    1热度

    1回答

    我有大量的lib*.a文件,其起源于GHC Haskell项目。只有我需要的符号是: extern "C" void init(); extern "C" void show(); extern "C" void hide(); extern "C" void close(); 这里有很多不确定的符号(我相信这是哈斯克尔专用)(中CMakeLists.txt的一部分)的: list(AP

    1热度

    1回答

    假设您在/path/to/script.sh中定义了bash_function,并且您希望快速使用此GHCi。以下不工作: Prelude> :!source /path/to/script.sh Prelude> :!bash_function 有没有办法加载GHCI的bash的状态,使用户可以执行非股票外壳的功能呢?