A Minecraft REPL (Clojure+Bukkit+nREPL)

Discussion in 'Programming' started by kwill, Jul 21, 2020.

  1. Hi all. I thought some of you may be interested in an article I wrote on getting a nREPL connected to a running Spigot server: A Minecraft nREPL. If you have never heard of a REPL, I suggest reading Programming at the REPL. A REPL lets you interact with the environment (e.g., your Spigot server) live. This lets you do all sorts of cool things! Primarily, you don't need to re-compile, build the jar, copy to plugins directory, and restart server to see the changes you made in your plugin. You simply re-load the Clojure file with your changes and the results will be live immediately. Still not convinced and didn't read the Programming at the REPL? Here's a small snippet from the article that talks about the magic a REPL provides.

    The Clojure REPL gives the programmer an interactive development experience. When developing new functionality, it enables her to build programs first by performing small tasks manually, as if she were the computer, then gradually make them more and more automated, until the desired functionality is fully programmed. When debugging, the REPL makes the execution of her programs feel tangible: it enables the programmer to rapidly reproduce the problem, observe its symptoms closely, then improvise experiments to rapidly narrow down the cause of the bug and iterate towards a fix.
    - From Why use a REPL?

    Happy to hear any feedback on the approach, content, ideas, etc!
    • Winner Winner x 1
  2. It's interesting to see functional programming ideas in minecraft! Neat stuff :)
  3. I was a fan of clojure a while ago. Very cool to see a Lisp interoperate with a game as popular as Minecraft

    Unfortunately Rust seems to be way more popular than Clojure now.

    If only someone can make a Lisp with the characteristics of Rust...