- 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>
24 lines
568 B
Plaintext
24 lines
568 B
Plaintext
// AOT Python math.sqrt(16) demo
|
|
// Demonstrates import/getattr/call chain
|
|
static box Main {
|
|
init { py, math, sqrt_func, result }
|
|
|
|
main() {
|
|
// Create Python runtime
|
|
me.py = new PyRuntimeBox()
|
|
|
|
// Import math module
|
|
me.math = me.py.import("math")
|
|
|
|
// Get sqrt function from math module
|
|
me.sqrt_func = me.py.getattr(me.math, "sqrt")
|
|
|
|
// Call sqrt(16)
|
|
local sixteen
|
|
sixteen = new IntegerBox(16)
|
|
me.result = me.py.call(me.sqrt_func, sixteen)
|
|
|
|
// Return the result (should be 4.0)
|
|
return me.result
|
|
}
|
|
} |