Groovy で FizzBuzz

「Programming Groovy」を読んだきり、全く Groovy を触っていなかったのでリハビリ的にちょっとずつ書いてみます。

難しいのは面倒だったので、とりあえず FizzBuzz を。
コードの善し悪しはさておき、とりあえず書けた。よかった。

range = (1..100)
multi3 = range.grep { it % 3 == 0 }
multi5 = range.grep { it % 5 == 0 }
other = range - (multi3 + multi5)

range.each {
    message = ''
    if(it in multi3) {
        message += 'Fizz'
    }
    if(it in multi5) {
        message += 'Buzz'
    }
    if(it in other) {
        message += it
    }
    println message
}

List に追加されたメソッドが、 Smalltalk のものに近くて使いやすいですね。クロージャが使える点も良いです。
ただ、メソッド呼び出しにスペースを使えないパターンがあるのが残念。これは仕方ないですが。