gore
A Go REPL with line editing, multi-line input, package-import completion, and automatic printing of declared values, evaluating each entered expression by running it as a Go program.
gore is a Go REPL that supports line editing with history, multi-line input, package importing with completion, and evaluating any expression, statement, or function declaration without producing evaluated-but-not-used errors. Code completion requires gopls, and a documentation command shows a package's docs, optionally piped through a configurable pager.
It installs by building from source, since it needs a Go toolchain at runtime and so is not distributed as a standalone binary, and it can also run through a Docker image. It supports Go modules, downloading a remote module automatically instead of requiring a separate fetch step first, and can load local modules from the project directory it was started in. Because it evaluates each line by running it as a program, every line is re-executed repeatedly, which the project notes makes timing calls unreliable and execution fairly slow.