function Visitor() {} Visitor.prototype = { constructor: Visitor, accept: function(object) { return object && this[object.type] && this[object.type](object); }, program: function(program) { var statements = program.statements, i, l; for(i=0, l=statements.length; i