original_string: public function repl()
      {
          $input = $this->prompt();
          $buffer = null;
  
          while ($input != 'exit;') {
              try {
                  $buffer .= $input;
  
                  if ((new ShallowParser)->statements($buffer)) {
                      ob_start();
                      $app = $this->container;
                      eval($buffer);
                      $response = ob_get_clean();
                      
                      if ( ! empty($response)) $this->output->writeln(trim($response));
  
                      $buffer = null;
                  }
              } catch (\Exception $e) {
                  $this->error($e->getMessage());
              }
  
              $input = $this->prompt($buffer !== null);
          }
  
          if ($input == 'exit;') exit;
      }
code: public function repl()
      {
          $input = $this->prompt();
          $buffer = null;
  
          while ($input != 'exit;') {
              try {
                  $buffer .= $input;
  
                  if ((new ShallowParser)->statements($buffer)) {
                      ob_start();
                      $app = $this->container;
                      eval($buffer);
                      $response = ob_get_clean();
                      
                      if ( ! empty($response)) $this->output->writeln(trim($response));
  
                      $buffer = null;
                  }
              } catch (\Exception $e) {
                  $this->error($e->getMessage());
              }
  
              $input = $this->prompt($buffer !== null);
          }
  
          if ($input == 'exit;') exit;
      }
code_tokens: public function repl ( ) { $ input = $ this -> prompt ( ) ; $ buffer = null ; while ( $ input != 'exit;' ) { try { $ buffer .= $ input ; if ( ( new ShallowParser ) -> statements ( $ buffer ) ) { ob_start ( ) ; $ app = $ this -> container ; eval ( $ buffer ) ; $ response = ob_get_clean ( ) ; if ( ! empty ( $ response ) ) $ this -> output -> writeln ( trim ( $ response ) ) ; $ buffer = null ; } } catch ( \ Exception $ e ) { $ this -> error ( $ e -> getMessage ( ) ) ; } $ input = $ this -> prompt ( $ buffer !== null ) ; } if ( $ input == 'exit;' ) exit ; }
docstring: Run the REPL loop
  
  @return void
docstring_tokens: Run the REPL loop