Conversations about my experience with Elm led me to Haskell, and I’d always wanted to write an application that depended on data mutation in a purely functional language. Over the recent holiday, I decided to make a MUD, in part because the first large code base I worked on was a DikuMUD that ran in the early 90’s.

This is more complicated than “Snake” obviously, both in terms of software complexity and creative complexity. The world I created only has 3 rooms so far, and I left out some important features like items and combat. Let’s all agree to just refer to the missing elements as “exercises left for the reader.”

Here is my “Multi User Domain” named HaskellMUD.