<a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Expression_problem" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Expression_problem</a><p>&gt; The goal is to define a datatype by cases, where one can add new cases to the datatype and new functions over the datatype, without recompiling existing code, and while retaining &#x2F;<i>static type safety</i>&#x2F;<p>So, while there&#x27;s an easy way to write something with lispy multiple dispatch, it is not a solution, sorry.