> Well, here the example given with 1.6.8
>
>
>moulon% ./ruby -v b.rb
>ruby 1.6.8 (2002-12-24) [i686-linux]
>178
>check now
>975698
>148
>149
>149
>149
>b.rb:24:in `join': Interrupt
>	from b.rb:24
>moulon% 
>
> and with 1.8.4
>
>moulon% /usr/bin/ruby -v b.rb
>ruby 1.8.4 (2005-12-24) [i486-linux]
>187
>check now
>853644
>800159
>800160
>800161
>800162
>b.rb:24:in `join': Interrupt
>	from b.rb:24
>moulon% 

Hmm, on my machine,

E:\ruby-cvs\win32_1_6>miniruby -v \b.rb
ruby 1.6.8 (2002-12-24) [i586-mswin32]
68
check now
975362
70
71
72
73
73
\b.rb:23:in `join': Interrupt
        from \b.rb:23

E:\ruby-cvs\win32_1_8>miniruby -v \b.rb
ruby 1.8.4 (2006-02-24) [i386-mswin32]
108
check now
853455
110
111
112
/b.rb:23:in `join': Interrupt
        from /b.rb:23

Interesting but probably conservative GC is always like this.