add printer to repl implementation