1

最近ghciをダウンロードしましたが、.hsファイルをコンパイルしようとすると、IOモジュールが隠しパッケージhaskell98-2.0.0.1に含まれていると表示されます。を使用して公開するとghc-pkg expose haskell98-2.0.0.1、ベースとプレリュードに問題があり、プレリュードがあいまいであると表示されます。

プログラムを正しくコンパイルできるように、どうすればこれを回避できますか?前もって感謝します。

4

2 に答える 2

2

ghcを使用している場合は、baseパッケージの一部であるSystem.IOモジュールを使用する必要があります。Haskel-98は...まあ、今は時代遅れです。haskell-98を使い続けたい場合(これにより、ほとんどの既存のライブラリで作業できなくなります)、両方として公開haskell98および非表示にし、モジュールを含める必要があります。これにより、コンパイラはどちらをインポートするかを推測できず、プレリュードをインポートする必要があります。標準のための方法。basebasehaskell98Prelude

于 2012-12-26T17:53:40.803 に答える
0

ここで(permeakraが指摘したように)正しいことは、System.IOモジュールを使用することです。これは、配置することによって行われます。

import System.IO

ファイルの上部近く(モジュール宣言の下(ある場合)ですが、他のすべての上にあります)。

于 2012-12-26T21:55:34.453 に答える