はじめに Groovyのクロージャ(Closure)には.trampolineってメソッドがあって、これをうまい感じに使うと末尾再帰を最適化してくれる。 よしやってみよう では、簡単な合計値を求めるサンプルを再帰処理で。 java.lang.StackOverflowError お約束。 よし、今こそトランポリンだ! groovy.lang.MissingMethodException: No signature of method: java.lang.Integer.plus() is applicable for argument types: (groovy.lang.TrampolineClosure) values: [groovy.lang.TrampolineClosure@509c6c30] あれ?Integer.plus()?あ…もしかして…。 これが最後の恋であるよう