I'm modifying the Mini-XML library to become an optimized ANSI-C SVG parser that can output OpenGL or Direct3D commands. I'm just wondering in terms of speed and efficiency, which is better for traversing XML trees in C; Iterative or Recursive functions? I want to keep the parser as small as possible in memory as for my uses will be used in conjunction with a caching system.