うめすこんぶ

日々のプログラミングで残しておきたいメモ.何かの役に立てれば幸いです.

ruby入門しました

スポンサーリンク

Ruby 2.0.0を使っています。最近はずっと文法習得をネットサーフィンしながら身につけているところです。

Rubyでは、クラスの中にクラスを定義したり、メソッド内にローカルメソッドを定義することも出来ます。 関数型言語っぽい書き方もできるし、無名関数を代入することもできるので、javascriptっぽい書き方もできるのですね。非常に自由度が高いです。

  • クラスの中のクラス定義
class A
  class B
    @c = 1
  end
  @b = B.new
end
  • メソッド内メソッドの定義
def method()
  def methodloc(a)
    p a
  end
  methodloc("dd")
end
  • 無名関数の代入
def map(f, xs) 
  xs.each do |x|
    f(x)
  end
end

map(
    def f(a)
      p a + 10
    end,
    [1,2,3,4])