6

おそらくJavascriptは、V8エンジンで実行するためにある種のバイトコードにコンパイルされていますか? Python は、Python が同じバイトコードにコンパイルされて V8 で実行されることを想像できるほど十分に類似した言語ですか?

これをやろうとしているプロジェクトはありますか?

4

7 に答える 7

5

私の知る限り、特に V8 仮想マシンをターゲットにしたプロジェクトはありません。ただし、Pypyと以前の Unladen Swallow (現在はメインの CPython ツリーの py3k-jit ブランチにマージされています) はどちらも、V8 が Javascript で行うのと同様に、Python をネイティブ コードにジャスト イン タイムでコンパイルしようとします。

@something が言うように、パジャマを使用すると、GWT が Java で行うのと同じように、Python コードを記述して Javascript に変換できます。このように変換されたコードは、他の Javascript コードと同様に、V8 で実行する場合と同じ利点があります。

于 2011-03-07T00:28:39.693 に答える
3

V8 には、実際には汎用バイトコードがありません。正規表現のバイトコードがありますが、サポートは通常コンパイルされていません。逆シリアル化のバイトコードと再配置情報のバイトコードがありますが、どちらも実装の詳細であり、何にも使用できません。

探しているのは、JS ソース コードにコンパイルされるものです。

于 2011-04-10T09:57:34.990 に答える
3

Python から Javascript へのコンパイラを提供する 3 つのプロジェクトが既にあります。生成された Javascript は、V8 を含む任意のエンジンで実行できます。Pyjamas、Skulpt、Py2JS を探してください。

これは、Python を V8 バイトコードにコンパイルすることと同じではありませんが、最終的な結果はほとんど同じです。

于 2011-03-07T00:37:27.077 に答える
0

「パジャマ」のようなものをお探しですか? http://pyjs.org/

于 2011-03-07T00:20:56.577 に答える
0

http://repl.it/をご覧ください。これは、JavaScript にコンパイルされたほぼ完全な Python インタープリターの例です。これは、 Emscripten (LLVM バイトコードから Javascript へのコンパイラー) のおかげで達成されました。

于 2013-07-14T21:12:31.870 に答える
0

ブラウザー内で python を実行する方法については、python wiki ページWebBrowserProgrammingを参照してください。

于 2011-03-06T23:30:00.497 に答える
-5

Python はすでにバイトコードにコンパイルされ、実行されています。これは、CPython の .pyc ファイルです。同様に、Jython は Java バイトコードに (動的に) コンパイルし、IronPython for .NET も同様です。

于 2011-03-06T23:28:49.790 に答える