cons, snoc, singleton