code: func Dir(path string) func(*Runner) error {
  	return func(r *Runner) error {
  		if path == "" {
  			path, err := os.Getwd()
  			if err != nil {
  				return fmt.Errorf("could not get current dir: %v", err)
  			}
  			r.Dir = path
  			return nil
  		}
  		path, err := filepath.Abs(path)
  		if err != nil {
  			return fmt.Errorf("could not get absolute dir: %v", err)
  		}
  		info, err := os.Stat(path)
  		if err != nil {
  			return fmt.Errorf("could not stat: %v", err)
  		}
  		if !info.IsDir() {
  			return fmt.Errorf("%s is not a directory", path)
  		}
  		r.Dir = path
  		return nil
  	}
  }
docs: // Dir sets the interpreter's working directory. If empty, the process's current
  // directory is used.