TIL that C# and the CLR in general actually can't do Tail Call Optimization. Does anyone know if this is the same reason that the JVM can't do it, so we have manual work-arounds is #clojure via (recur)? https://stackoverflow.com/questions/491376/why-doesnt-net-c-optimize-for-tail-call-recursion