Files
hakorune/examples/aot_py_math_sqrt.nyash
Moe Charm db265d7f29 🐍 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>
2025-08-30 07:47:21 +09:00

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
}
}