構文解析その後

まとめはSICPの日記で書くとして今はこんな感じ。

(+ a 1)
=>
OP_BODY[+]
 OP_SYMBOL[a]
  NULL
  NULL
 OP_ARGS
  OP_NUMBER[1]
   NULL
   NULL
  NULL

複雑で紛らわしいものを試す


(a (b 2 3))
OP_BODY[a]
 OP_BODY[b]
  OP_NUMBER[2]
   NULL
   NULL
  OP_ARGS
   OP_NUMBER[3]
    NULL
    NULL
   NULL
 NULL
(a b 2 3)
OP_BODY[a]
 OP_SYMBOL[b]
  NULL
  NULL
 OP_ARGS
  OP_NUMBER[2]
   NULL
   NULL
  OP_ARGS
   OP_NUMBER[3]
    NULL
    NULL
   NULL
(a (b 2) 3)
OP_BODY[a]
 OP_BODY[b]
  OP_NUMBER[2]
   NULL
   NULL
  NULL
 OP_ARGS
  OP_NUMBER[3]
   NULL
   NULL
  NULL


合っているかな?
とりあえずこれでぐっすり眠れそうだ。