1

これを書いている時点で、私は最新の GHC (7.9.20140608) と cabal (1.20.0.0) を実行していますが、attoparsec失敗しているようです。

Data/Attoparsec/ByteString/Internal.hs:519:7:
    Illegal equational constraint a_audv ~ (ByteString, t)
    (Use GADTs or TypeFamilies to permit this)
    In the context: (a_audv ~ (ByteString, t))
    While checking the inferred type for ‘succ'’
    In the expression:
      let
        succ' t' pos' more' a
          = succ t' pos' more' (substring pos (pos' - pos) t', a)
      in runParser p t pos more lose succ'
    In the second argument of ‘($)’, namely
      ‘\ t pos more lose succ
         -> let succ' t' pos' more' a = ...
            in runParser p t pos more lose succ'’

言語拡張機能がありませんか? それとも、この問題はもう少しトリッキーでしょうか? これが私のcabalファイルです:http://lpaste.net/105329

これに関するどんな助けも信じられないほど素晴らしいでしょう:) Happy Hacking!

4

1 に答える 1

2

今のところ、ghc-7.8 を使用する最良の方法 (ディストリビューション パッケージ マネージャーに含まれていない場合) は、ghc ダウンロード ページに移動し、現在の安定版リリースの指示に従うことです。バイナリ パッケージがあるか、ソースからインストールできます (ソース tarball を使用すると、簡単にインストールでき./configure && make && make installますが、動作する ghc が必要です)。

ソースからインストールする場合は、バージョンを 7.8.2.1 などに変更することを検討してください。AC_INITの行を編集してから前にconfigure.ac実行することで、これを行うことができます。これを行い、バージョン固有の場所 (たとえば、これは で設定できます) にもインストールすると、パッケージ化されたインストール (またはプラットフォーム、またはその他のバージョン) と同時に、ローカルでコンパイルされたバージョンをインストールできます。 )。autoreconfconfigure/usr/local/ghc/ghc-7.8.2.1.src./configure --PREFIX=/path/to/install

ghc-7.8.3 はまもなく (おそらくせいぜい 2 週間以内に) リリースされる予定です。それはバグ修正リリースです。また、現在、ghc-7.8 を含む Haskell Platform リリースがないため、現時点ではオプションではありません。

于 2014-06-09T22:13:20.213 に答える