🚨 AI協調開発の危機回避事例を論文化(paper-09)

「ん?大丈夫?」の一言がPython特化ハードコーディングを防いだ事例を記録。
Everything is Box哲学 vs 技術的正しさの綱渡りからの生還を分析。

- docs/research/paper-09-ai-collaboration-pitfall/ を新規作成
  - incident-analysis.md: Lowerer特殊化危機の詳細分析
  - ai-collaboration-lessons.md: AI協調開発の教訓
  - intuition-in-engineering.md: エンジニアの直感の価値
  - summary.md: 綱渡りからの生還まとめ
- 研究論文の1論文1フォルダ原則に従い整理
- Python統合関連の実装修正とビルド成功確認

🛡️ Generated with Claude Code
This commit is contained in:
Moe Charm
2025-08-30 08:54:15 +09:00
parent db265d7f29
commit 7a0f9bd432
103 changed files with 8697 additions and 909 deletions

View File

@ -0,0 +1,39 @@
// Full math.sqrt with import/getattr/call
static box Main {
main() {
local py, math, sqrt_func, sixteen, result, console, msg1, msg2
// Create console
console = new ConsoleBox()
// Create Python runtime
py = new PyRuntimeBox()
// Print start message (text only)
msg1 = new StringBox("Starting calculation")
console.log(msg1)
// Import math module
local math_name
math_name = new StringBox("math")
math = py.import(math_name)
// Get sqrt function
local sqrt_name
sqrt_name = new StringBox("sqrt")
sqrt_func = py.getattr(math, sqrt_name)
// Create argument
sixteen = new IntegerBox(16)
// Call sqrt(16)
result = py.call(sqrt_func, sixteen)
// Print done message (text only)
msg2 = new StringBox("Calculation complete")
console.log(msg2)
// Return result (should be 4.0)
return result
}
}

View File

@ -0,0 +1,27 @@
// Simplest math.sqrt example with ConsoleBox output
static box Main {
main() {
local py, code, result, console, msg1, msg2
// Create console
console = new ConsoleBox()
// Create Python runtime
py = new PyRuntimeBox()
// Print start text
msg1 = new StringBox("Calculating sqrt(16)...")
console.log(msg1)
// Use eval for math.sqrt (since import/getattr not available)
code = new StringBox("__import__('math').sqrt(16)")
result = py.eval(code)
// Print done text
msg2 = new StringBox("Result calculated!")
console.log(msg2)
// Return the result (should be 4.0 as FloatBox with NYASH_PY_AUTODECODE=1)
return result
}
}

View File

@ -0,0 +1,12 @@
// ConsoleBox native build test - simplest version
// Build native:
// ./tools/build_aot.sh examples/console_native_simple.nyash console_simple
static box Main {
main() {
local c
c = new ConsoleBox()
c.println("Hello Nyash Native!")
return 0
}
}

View File

@ -0,0 +1,17 @@
// ConsoleBox native build test - minimal example
// Build native:
// cargo build --release --features cranelift-jit
// ./tools/build_aot.sh examples/console_native_test.nyash console_app
static box Main {
greet(name) {
local c
c = new ConsoleBox()
c.println("Hello, " + name + "!")
return 0
}
main() {
return me.greet("Nyash Native")
}
}

View File

@ -0,0 +1,6 @@
// Minimal test for native build
static box Main {
main() {
return 42
}
}

View File

@ -0,0 +1,6 @@
// Simplest possible example for native build
static box Main {
main() {
return 42
}
}

View File

@ -0,0 +1,18 @@
// Test context sharing between import and eval
static box Main {
main() {
local py, r
// Create Python runtime
py = new PyRuntimeBox()
// Import math module
py.import("math")
// Try to use math in eval
r = py.eval("math.sqrt(16)")
// Return result (VM prints final result summary)
return r
}
}