問題タブ [interpreted-language]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
parsing - インタプリタされたプログラミング言語を解析するプロセスは何ですか?
構文木を作成する最良の方法を知りたいのですが。
language-design - インタプリタを実装する場合、ホスト言語のガベージコレクタを便乗させるのは良いことですか、悪いことですか?
GCed言語のインタープリターをGCed言語で実装しているとしましょう。デザインにかなり注意を払っている限り、ガベージコレクションは無料で入手できるようです。
これは一般的にどのように行われるのですか?これを行わない正当な理由はありますか?
clang - Ruby および Python インタープリターを Clang でコンパイルしますか?
ちょっと興味があります。Clang を使用して動的言語のインタープリターをコンパイルすると、これらの言語のパフォーマンスにどのように影響するかについてのベンチマークはありますか? それらのインタープリターはコンパイルさえしますか?
language-agnostic - ランタイムコードの解釈と実行を理解する
私はXNAでゲームを作成していて、独自のスクリプト言語を作成することを考えていました(非常に単純です)。これを実現するためのより良い方法があることは知っていますが(そして私は車輪の再発明を行っています)、生産的で迅速な学習体験以上のものを望んでいます。
実行時にコードに直面した場合、私が理解していることから、通常のアプローチは、マシンコードやバイトコードなど、実際に実行可能なものに解析してから実行することです。しかし、たとえば、Chromeが最初に登場したとき、JavaScriptをマシンコードにコンパイルするため、JavaScriptエンジンは高速であると彼らは言いました。これは、他のエンジンがマシンコードにコンパイルされていなかったことを意味します。
低レベルにコンパイルしたくないので、低レベルにコンパイルせずにコードを解析して実行するための既知の最新の手法はありますか?おそらく、コードをある種のツリーに解析し、ツリーを分岐し、各シンボルを比較して、そのシンボルを処理する関数を呼び出すようなものですか?(暗闇の中での野生の推測と刺し傷)
python - コメントは通訳言語を遅くしますか?
私はPythonを使用しているのでこれを求めていますが、他のインタプリタ言語(Ruby、PHP、JavaScript)にも適用できます。
コードにコメントを残すたびに、インタープリターの速度が低下しますか?通訳者についての私の限られた理解によれば、それはプログラム式を文字列として読み取り、それらの文字列をコードに変換します。コメントを解析するたびに、それは無駄な時間のようです。
これは本当ですか?通訳言語でのコメントに関する慣習はありますか、それともその影響はごくわずかですか?
ruby - 言語が「解釈される」とはどういう意味ですか?
Ruby などの言語 (MRI を実行している場合、バイトコードにコンパイルされていないことを意味します) は、メソッドやループ本体などの実行が必要になるたびに実際に解析されますか? つまり、ループを実行するには、その本体をN回解析する必要がありますか?
私は常に、これらすべてのプログラムがブートストラップで一度に解析され、「厳密に型指定された」ステートメント ツリーなどに変換されると考えていました。そうではありませんか?
php - コンパイルされた PHP スクリプトは存在しますか?
Apache の .so 拡張子としてコンパイルされた PHP スクリプトを使用または読んだことがある人がいるかどうか疑問に思っています...どこかでそれについて読んだことを覚えていると思いますが、そのようなものが存在するかどうかはわかりません。
これは有望に見えますが、不完全で放棄されています: http://phpcompiler.org/
パフォーマンスが向上すると思うので興味があります...おそらく誰かがこれを行うフレームワークまたはApache拡張機能を指摘することができます。
ありがとう!!
python - Pythonが解釈される場合、.pycファイルとは何ですか?
Pythonはインタプリタ言語であることを理解するように言われました...
しかし、Pythonソースコードを見る.pyc
と、Windowsが「コンパイル済みPythonファイル」として識別するファイルが表示されます。
これらはどこから来るのですか?