code: func StdIO(in io.Reader, out, err io.Writer) func(*Runner) error {
  	return func(r *Runner) error {
  		r.Stdin = in
  		if out == nil {
  			out = ioutil.Discard
  		}
  		r.Stdout = out
  		if err == nil {
  			err = ioutil.Discard
  		}
  		r.Stderr = err
  		return nil
  	}
  }
docs: // StdIO configures an interpreter's standard input, standard output, and
  // standard error. If out or err are nil, they default to a writer that discards
  // the output.