class Temple::Generator

def compile(exp, single = false)

def compile(exp, single = false)
  if @compiling || single
    type, *args = exp
    recv = @in_capture || self
    recv.send("on_#{type}", *args)
  else
    begin
      @compiling = true
      [preamble, compile(exp), postamble].join(' ; ')
    ensure
      @compiling = false
    end
  end
end