和田といいます。

下に付けたコードをruby 1.8.0(OSはFreeBSD 4.6-RELEASE)で実行すると、
メモリ消費量がどんどん増えていきます。

Rubyのバグなのか私の環境の問題なのかがわかっていないので
私の勘違いの可能性があり、その場合はもうしわけないのですが、
とりあえず報告いたします。

-----

require 'complex'

class A
  def initialize(a = 1.0, b = 0.0)
    @a = a
    @b = b

    @c = @b
    @d = @b
    @e = @b
    @f = @b
    @g = @b
  end

  def f(h, i)
    if h == @a and @e == @b and @g == @b
      @c = @a
    end
    if i == @a and @f == @b and @g == @b
      @d = @a
    end
    if h == @a and i == @a and @e == @b and @f == @b
      @g = @a
    else
      @g = @b
    end
    if @g == @a
      @c = @b
      @d = @b
      @e = @a
      @f = @a
      @g = @b
    end

    if h == @b and @c == @b
      @e = @b
    end
    if i == @b and @d == @b
      @f = @b
    end

    val = 0.0
    if @c == @a
      val += 1.0
    end
    if @d == @a
      val -= 1.0
    end
    val
  end
end

a = A.new

loop do
  a.f(1.0, 0.0)
end