0

Haskell ランタイム インタープリター ライブラリである Hint が GHC インタープリターをクラッシュさせないようにするにはどうすればよいですか? それを使用してモジュールを GHC インタプリタにロードしようとすると、「バスエラー」、「不正な命令」、または「セグメンテーション違反」が発生します。これは、ヒントを使用するコードをロードするためにヒントを使用すると、アプリケーションがクラッシュするため、煩わしさだけでなく大きな問題です。これは、リンク時にヒントがドラッグする大量のライブラリに関連していると思われます。

Mac OS 10.6.8、GHC バージョン 7.0.4 を使用しています

4

2 に答える 2

3

残念ながら、それを止めることはできません。ghci と Hint の両方で使用される ghc api は、現在のコンテキストにパッケージとモジュールをロードすることを含むいくつかの同時使用ケースを処理できません。ghc API にはグローバル状態が多すぎます。

于 2012-03-05T04:32:27.353 に答える
-2

ロードされたすべてのコードに関数を明示的に渡すことで、この問題を解決しました。

たとえば、代わりに

module Go where
import Run

go :: IO ()
go = do
  blah blah ....
  runFile etc ...

やった

module Go where

go :: RunFile -> IO ()
go runFile = do
  blah blah ....
  run runFile etc ...
于 2012-03-05T15:37:35.457 に答える