🐍 Python統合をAOTレベルまで完成(eval方式でunsupported=0達成)
- PyRuntimeBox.eval() で完全AOT対応(FloatBox返却) - NYASH_PY_AUTODECODE=1 によるプリミティブ型自動変換 - ConsoleBox経由の出力もAOT対応 - 多数のPythonテストサンプル追加 - 論文「1ヶ月でインタープリターからネイティブまで」執筆開始 課題: - import/getattr/callはプラグイン側の実装待ち - importとevalの文脈共有は未対応 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
22
examples/py_eval_demo_simple.nyash
Normal file
22
examples/py_eval_demo_simple.nyash
Normal file
@ -0,0 +1,22 @@
|
||||
// Python plugin demo (Phase 10.5 scaffold) - Simplified version
|
||||
// Requires: plugins/nyash-python-plugin built (release) and nyash.toml updated
|
||||
// Run:
|
||||
// NYASH_PLUGIN_ONLY=1 ./target/release/nyash --backend vm examples/py_eval_demo_simple.nyash
|
||||
|
||||
static box Main {
|
||||
main() {
|
||||
local py, obj, result
|
||||
py = new PyRuntimeBox()
|
||||
|
||||
// Evaluate simple Python expression
|
||||
obj = py.eval("'hello' * 3")
|
||||
|
||||
// Get string representation
|
||||
result = obj.str()
|
||||
|
||||
// Print result
|
||||
print("Python eval result: " + result)
|
||||
|
||||
return 0
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user