prepl bound to *in* and *out*, suitable for use with e.g. server/repl (socket-repl). :ret and :tap vals will be processed by valf, a fn of one argument or a symbol naming same (default pr-str) Alpha, subject to change.