[#7785] rb2c — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです

28 messages 1999/09/02

[#7845] [Q] irb and SizedQueue — keiju@... (Keiju ISHITSUKA)

けいじゅ@日本ラショナルソフトウェアです.

14 messages 1999/09/15

[ruby-dev:7861] [BUG?] binding in required file in nesting [Re: [Q] irb and SizedQueue]

From: keiju@... (石塚圭樹)
Date: 1999-09-17 05:00:26 UTC
List: ruby-dev #7861
けいじゅ@日本ラショナルソフトウェアです.


In [ruby-dev :7852 ] the message: "[ruby-dev:7852] Re: [Q] irb and SizedQueue ", on Sep/16 10:52(JST) 
石塚圭樹 writes: 

>>|irbでよくわからない現象が発生しています. ちょっと助けてくださいませ.
>>もうひとつ重要なことを。
>
>>|で, ここの
>
>>|  IRB::BINDING_QUEUE.pop
>>|
>>|をコメントアウトすると正常に動かなくなるんですね... かわりに, sleep 1と
>>|かThread.passとかを入れても正常に動くようになります. 

>>|あと, irb-0.6-beta.tgz をin.comingの下に置きました. それを使ってください.
>>とりあえず、1,2行程度の入力には普通に反応しているようでした。
>
>うーん. タイミングに依存するのかしら...

ruby 1.4.1 では正常に動作していました. パッチの当て方が悪かったかも...

ところで, 今度こそバグらしきものを発見しました.

-- nest.rb
require "thread"

module NEST
  QUEUE = Queue.new
  require "nest2.rb"

  print "0> ";p eval "self", QUEUE.instance_eval{@que[0]}
  print "1> ";p eval "self", QUEUE.pop
end
--
-- nest2.rb
NEST::QUEUE.push $b = binding
print ">> "; p eval "self", $b
--

で nest.rb を実行すると,

keiio% ruby nest.rb
>> main
0> main
1> NEST

となります. なんかおかしいでしょ?

__
..............................石塚 圭樹@日本ラショナルソフトウェア...
----------------------------------->> e-mail: keiju@rational.com <<---

In This Thread