2011-09-10 7 views
3

最新の1.6.4 jrubyリリースでもRuby 1.9の新しいラムダ構文 - >がサポートされていないことに気付きました。だから、私はこの構文が一般的にはルビーコミュニティでは使用されていないと推測しています。それは構文が新しいか、それとも他の欠点があるからですか?jruby - ruby​​ lambda syntax - >重要な考慮事項ではありませんか?

x = -> y { y+1 } 
x.call(2) 

これは、Ruby 1.9.1に3を返し、あなたは1.9モードでそれを実行していないのJRuby 1.6.4

+2

私にとってはうまく動作し、非常に長い間働いています。 –

+1

@ banzaimanの回答に加えて、シェルに環境変数を設定して、常に1.9の動作を得るようにすることもできます。例: "export JRUBY_OPTS = - 1.9" – Scott

答えて

10

に構文エラーを示します。

$ jruby --1.9 -S irb 
irb(main):001:0> x = -> y { y+1 } 
=> #<Proc:[email protected](irb):1 (lambda)> 
irb(main):002:0> x.call(2) 
=> 3 
関連する問題