This post is about how and why my multiplayer card game GALGA uses a Free Monad DSL for its game rules. If that’s gobbledygook to you, read on and hopefully it’ll make at least a little more sense by the end! GALGA is like Magic: The Gathering in that each card has its own special rules that change the game. These rules can be simple, like “heal 10 life”, or more complex, like “make healing deal d
![Game rules with a Free Monad DSL](https://cdn-ak-scissors.b.st-hatena.com/image/square/bcebfac02f33b273757217e6acfe01f0ea9ea30e/height=288;version=1;width=512/https%3A%2F%2Froganmurley.com%2Fassets%2Fhero.png)