GroovyがRubyの影響を受けたことは間違いない。 もちろん、Rubyだけじゃなく、他の言語の影響もたくさんあるだろうけど、 (Javaをのぞけば)もっとも大きい影響を与えたのはRubyだろうと確信できる。 名前だって「ぐRuby」だし(笑)。
別の側面では、Alephという言語の公式サイトである www.aleph-lang.orgというドメイン名もruby-lang.orgの影響でないと誰が言えよう(言語は似てないけど)。
さて、次第に認知度が高まって、間接的に他の言語の影響を与えはじめたRubyだが、 その影響を受けたに違いない(勝手に断言)言語がまたひとつ登場した。
その名も「Jolt」!
ハッカー御用達のカフェイン飲料Joltにちなんで名付けられたらしい。 ドメイン名もwww.jolt-lang.orgと、ちゃんと-lang.orgの伝統(?)にのっとっている。
この言語はC++をリプレースするのを目的とする、静的型のシステム言語なのだが、 文法が(静的型があることを除けば)Rubyそっくり。「end文法」だし。
Rubyの特徴であったブロックもGroovyではなんかハック的な文法*1であったのに対して、 こちらのブロックはきちんとRubyとそっくりのセマンティックスになっている。「do〜end」と「{〜 }」の両方が使えるところまでRubyそっくり。
annotationというか可視性などの属性の指定の仕方が趣味じゃないのと、 仕様が必要以上に複雑な気がするのを除けば、これは「静的型のRuby」と呼んでもよいのではないだろうか。
こうやって、自分の言語やアイディアが他の言語デザイナーに影響を与えているのを見ると、 言語デザイナーとしてはこの上ない喜びを感じる。
*1 Groovyのブロックはクロージャとして引数リストの最後に追加される