「ん?大丈夫?」の一言が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
2.3 KiB
2.3 KiB
📖 Box-Oriented Programming: A Language Design That Makes Bad Code Impossible
📑 論文概要
タイトル: Box-Oriented Programming: A Language Design That Makes Bad Code Impossible
対象会議: SIGCSE 2026 / ICER 2025
著者: [TBD]
概要: プログラミング初学者が陥りやすい設計ミスを言語レベルで防ぐ「箱理論」を提案。Nyash言語での実装と教育効果を実証。
🎯 研究課題
-
なぜ初学者は悪いコードを書くのか?
- グローバル変数の乱用
- 不適切な責任分離
- メモリ管理の混乱
-
既存の教育アプローチの限界
- 「良い設計」の説教
- 後付けのリファクタリング
- 抽象的な原則論
-
提案:言語設計による解決
- 悪い設計を文法的に不可能に
- 箱による自然な責任分離
- 明示的な境界管理
📊 実験計画
対照実験
- グループA: 従来言語(Python/Java)で学習
- グループB: Nyashで学習
- 測定項目:
- コード品質メトリクス
- デバッグ時間
- 設計パターンの理解度
予想される結果
- Nyashグループは自然に良い設計に
- デバッグ時間の大幅削減
- 「なぜ良い設計か」の理解促進
📝 論文構成案
1. Introduction
- プログラミング教育の課題
- 言語設計の教育的影響
2. Related Work
- 教育用言語(Scratch, Alice)
- 設計制約言語(Elm, Rust)
3. Box Theory
- 箱の定義と性質
- 言語設計への適用
4. Nyash Language Design
- Everything is Box
- 明示的デリゲーション
- スコープと生命管理
5. Educational Experiment
- 実験設計
- 結果と分析
6. Discussion
- 教育的示唆
- 産業界への影響
7. Conclusion
🚀 進捗状況
- 理論的枠組みの整理
- 実験プロトコルの設計
- IRB(倫理審査)申請
- パイロット実験
- 本実験
- 論文執筆
📚 参考文献候補
- Guzdial, M. (2015). Learner-Centered Design of Computing Education
- Stefik, A., & Siebert, S. (2013). An Empirical Investigation into Programming Language Syntax
- Ko, A. J., & Myers, B. A. (2005). A framework and methodology for studying the causes of software errors