エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
minilispのevalを解説する - Qiita
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
minilispのevalを解説する - Qiita
// Returns a newly created environment frame. static Obj *push_env(Obj *env, Obj *vars, Obj *valu... // Returns a newly created environment frame. static Obj *push_env(Obj *env, Obj *vars, Obj *values) { if (list_length(vars) != list_length(values)) error("Cannot apply function: number of argument does not match"); Obj *map = Nil; for (Obj *p = vars, *q = values; p != Nil; p = p->cdr, q = q->cdr) { Obj *sym = p->car; Obj *val = q->car; map = acons(sym, val, map); } return make_env(map, env); }