File: Synopsis/PTree/o.hh
 1#include <cassert>
 2
 3template <typename N> N *nconc(N *p, Node *q) 
 4{
 5  assert(p);
 6  last(p)->set_cdr(q);
 7  return p;
 8}
 9
10Node *snoc(Node *, Node *);
11template <typename N> N *snoc(N *p, Node *q)
12{
13  return nconc(p, cons(q, 0));
14}