This currently only works for the sync REPL because it relies on blocking I/O inside the recursive parser written in Zig.
If we rewrite the parser function to be non-recursive, we can more easily make it async.
Another option is to write a Wisp parser in Wisp.