は、GHC(栄光グラスゴーHaskellのコンパイラは)に「コア」はHaskellをコンパイルし、そのコアのマシンにコードをコンパイルします。あたかもバイトコードであるかのように、HaskellプログラムをGHCコアとして配布することは実用的であろうか?そのような流通に利益があるだろうか?なぜ、なぜそうではないのですか?"バイトコード"としてのGHCコア?私はそれを理解したよう
答えて
これは実用的ではありません。 GHCコアは移植性がありません。たとえば、32ビットマシンでは、64ビット算術はコアの外部関数呼び出しにコンパイルされますが、64ビットマシンではネイティブの機械語算術が使用されます。さらに重要なこと
は、GHCは実際にコアを読み取ることができません。それはいくつかの形式でそれをプリントアウトすることができますが、中にこれらの形式のいずれかをリードバックする実際のコードはありません。私はそうすることへの大きな障害が存在することになるかどうかわからないんだけど、それは長年にわたって文書化の状況をされています私はすぐにサポートが出るとは思っていません。
コアは、一般的にはHaskellのにかなり近いです。あなたはその形式でコードを配布することから何を購入するのかは明らかではありません。それはコアにHaskellのを回すのにかかる時間は、通常、それがリンク最終的なプログラムのようなものを行うために要する時間未満であることを行っているので、通常はすべてのコンパイル時間に多くを保存しないでしょう。
また、Haskellのソースコードよりもチェックが少なくなっています(私は-dcore-lint
がこれを軽減するとは思いますが)、それを効果的にサンドボックス化するのは難しいでしょう(Safe HaskellはありますがSafe Coreはありません)。もちろん、これらの欠点は、バイトコードのソースが信頼できる場合には当てはまりません。
基本的に、GHCコアは、PythonのバイトコードとJVMのような目的のために設計された移植可能なバイトコード形式とは対照的に、コンパイラの中間言語です。
GHCiで使用されているように、GHC はにバイトコードインタープリタを持っています。そこで使われているバイトコードも移植性がないので、通常の操作でGHCが生成するマシンコードと比較して、私が考えることができる利点はありません。
- 1. 私はこれを理解しようとしている
- 2. APIゲートウェイ:ANY/{プロキシ+}私はそれを理解したよう要求
- 3. は、私は以下のコードを理解しようとしてきたPythonの
- 4. カントは、私はエクスプレスJSのソースを理解しようとしていた
- 5. 私は移動コンストラクタを理解しようとしている
- 6. 私は、次のコードを理解しようとしてきたのjavascript
- 7. Javaバイトコードとそのようなメソッドエラー
- 8. は、私が理解しようとしている
- 9. 私はxmlデータを解析し、それをmysqlクエリとして処理したいと考えました
- 10. 私が理解したようなBigInteger
- 11. ジェネリックは、私は次のことを理解しようとしたカッコ
- 12. Javaバイトコードを理解する
- 13. 私はスパークプログラムによって生成された特定のログを理解しようとしています
- 14. CakePHP HABTM - 私はそれを理解していません
- 15. どのように私はこれを理解しようとしている私の脳をラッキングしてきた私は、Python 3.3
- 16. GHCコアへのコンパイル
- 17. GHCコアの `Show`インスタンス
- 18. はUITextView私はSOこれを理解しようとする日の大半を費やしてきた
- 19. 機能を理解しようと、それは(彼は会社左)
- 20. コード:メッセージは、私はこれが動作しない理由を理解しようとしています
- 21. 私はこのアンドロイドアプリのコードを理解しようとしています
- 22. どのように私は、データセットを読んで、それを処理しようとしていますmap.keys
- 23. C EXECV私はこのコードを理解しようとしている機能
- 24. 私はウェブ・トークンの概念を理解しようとしています
- 25. 私はOpenGLのView Matrixを理解しようとしています
- 26. GHCプロファイラの意味を理解する
- 27. は、どのように私はdarkboxを使用しようとしていますと、私は理解していないエラーに遭遇したエラーメッセージ
- 28. HaskellのGHCは、私はソースからGHC 7.2.2を構築しようとしています</p> <p>GHC 7.0.3、設定がHsColour
- 29. これを理解しようとしているR
- 30. 私は、より大きな検索エンジンを指すPHP検索バーを作成しようとしています。それは動作していないと私はそれを解決する方法を理解していない。