whole_func_string: function start(options) {
      options = options || {};
  
      var prompt = options.prompt || '> ';
  
      var eval = options.eval || run;
  
      var context = new ExecutionContext();
      var manager = new BlockManager();
      var ast = new AbstractSyntaxTree([], {}, manager);
      nextLine(context, ast, prompt, prompt, -1, eval);
  }
func_code_string: function start(options) {
      options = options || {};
  
      var prompt = options.prompt || '> ';
  
      var eval = options.eval || run;
  
      var context = new ExecutionContext();
      var manager = new BlockManager();
      var ast = new AbstractSyntaxTree([], {}, manager);
      nextLine(context, ast, prompt, prompt, -1, eval);
  }
func_documentation_string: Starts the REPL. Options can be:
  
  - `prompt` - the prompt and `stream` for all I/O. Defaults to `> `.
  - `eval` - function that will be used to eval each given line. Defaults to an async wrapper for `executor.execute`.
  - `completer` - function that will be used for auto-completing.
  
  @param {Object} options Options for the REPL