3

私は Haskell 用の非常に単純なテキスト エディターに取り組んでおり、ユーザーが「チェック」を押したときにコード内の静的エラーを強調表示できるようにしたいと考えています。

GHC-APIを使用して、実際にコンパイルせずにhaskellファイルをコンパイルする「ドライラン」を行う方法はありますか? 文字列を取り、通常のコンパイルのすべてのチェックを実行できるようにしたいのですが、出力は必要ありません。GHC-API は、エラーなどを強調するために GHC からのコマンドライン出力を解析する必要がないため、理想的です。

さらに、ファイルではなく文字列に対してこのチェックを行うことは可能ですか? (そうでない場合は、一時ファイルに書き込むことができますが、これは非常に効率的ではありませんが、機能します)。

これが可能である場合、これを行う方法の例を提供または指摘していただけますか?

この質問は同じことを尋ねますが、それは 3 年前のことで、そのときの答えは「GHC-API は新しく、適切なドキュメントはまだありません」でした。だから私の希望は、ステータスが変わったことです。

編集:「ドライラン」の制限は、コンパイルがサーバー側で行われる Web ベースの設定でこれを行っているためです。そのため、ユーザーが「チェック」を押すたびに不要なディスクの読み取り/書き込みを避けたいと考えています。実行可能ファイルは、バージョンを実行する準備が整うまで、とにかく捨てられます。

4

1 に答える 1

4

これを回答に移動するだけで、これはすでにghc-modとして存在します。ここにホームページがあります。これにはすでに Emacs、Sublime、および Vim のフロントエンドがあるため、使用方法の例が必要な場合はたくさんあります。本質的に、ghc-mod はまさにあなたが望むものであり、エディター用に設計された GHC API のラッパーです。

于 2013-12-17T05:16:45.773 に答える