昨晩エントリ
eval してないとかエラそーに書いてますが引用エントリにも_読んで吐き出してるだけ_とあります。しかも自分は repl.c のソレが云々、って書いてますが、これは完全ダウト。
例えば Gauche:StandAloneProgram の_C プログラムとして書いて libgauche をリンクする_の項に書いてある方式か。でも具体的にどうすんだろ。
- Scm_Init 呼びだして
- Scm_Load で scheme な手続きを load して
その後、手続きに値を渡すのってどうするんかな。main.c の L492 あたりに以下な記述があるな。
ScmObj r = Scm_ApplyRec(mainproc, SCM_LIST1(av)); if (SCM_INTP(r)) { exit_code = SCM_INT_VALUE(r); } else { exit_code = 70; }
Scm_ApplyRec 手続きの定義を見るに戻りは val0 な模様。普通に C から定義済みの手続きを読み込ませた上でリストを渡してその結果を戻す、みたいなサンプルを別途書いてみる方向で。
とりあえず
reading gauche 方面にナニ