I still can't make my mind up about using lists for representing syntax. It's great for macros, but ASTs often need more (eg line numbers).