[#30872] segv when reentering into Fiber with callcc — sheepman <sheepman@...>

こんばんは、sheepman です。

15 messages 2007/06/01
[#30899] Re: segv when reentering into Fiber with callcc — SASADA Koichi <ko1@...> 2007/06/06

 ささだです。

[#30905] Re: segv when reentering into Fiber with callcc — "Yusuke ENDOH" <mame@...> 2007/06/06

遠藤と申します。

[#30906] Re: segv when reentering into Fiber with callcc — SASADA Koichi <ko1@...> 2007/06/06

 ささだです。

[#30929] secrand.rb — "NAKAMURA, Hiroshi" <nakahiro@...>

-----BEGIN PGP SIGNED MESSAGE-----

51 messages 2007/06/08
[#30930] Re: secrand.rb — Tanaka Akira <akr@...> 2007/06/08

In article <4669066C.2080307@sarion.co.jp>,

[#30934] Re: secrand.rb — "NAKAMURA, Hiroshi" <nakahiro@...> 2007/06/08

-----BEGIN PGP SIGNED MESSAGE-----

[#30935] Re: secrand.rb — Tanaka Akira <akr@...> 2007/06/08

In article <46694461.4060706@sarion.co.jp>,

[#30936] Re: secrand.rb — "NAKAMURA, Hiroshi" <nakahiro@...> 2007/06/08

-----BEGIN PGP SIGNED MESSAGE-----

[#30938] Re: secrand.rb — Tanaka Akira <akr@...> 2007/06/08

In article <46697C0B.8060402@sarion.co.jp>,

[#30939] Re: secrand.rb — "NAKAMURA, Hiroshi" <nakahiro@...> 2007/06/08

-----BEGIN PGP SIGNED MESSAGE-----

[#30940] Re: secrand.rb — Tanaka Akira <akr@...> 2007/06/08

In article <4669DAB0.4050705@sarion.co.jp>,

[#30944] Re: secrand.rb — "NAKAMURA, Hiroshi" <nakahiro@...> 2007/06/09

-----BEGIN PGP SIGNED MESSAGE-----

[#30945] Re: secrand.rb — Tanaka Akira <akr@...> 2007/06/09

In article <466AA73C.9030407@sarion.co.jp>,

[#30946] Re: secrand.rb — "NAKAMURA, Hiroshi" <nakahiro@...> 2007/06/09

-----BEGIN PGP SIGNED MESSAGE-----

[#30950] Re: secrand.rb — Nobuyoshi Nakada <nobu@...> 2007/06/11

なかだです。

[#31173] Re: Random — Tanaka Akira <akr@...> 2007/07/10

In article <469253E9.9010203@sarion.co.jp>,

[#31174] Re: Random — "NAKAMURA, Hiroshi" <nakahiro@...> 2007/07/10

-----BEGIN PGP SIGNED MESSAGE-----

[#31178] Re: Random — "NAKAMURA, Hiroshi" <nakahiro@...> 2007/07/11

-----BEGIN PGP SIGNED MESSAGE-----

[#31179] Re: Random — Tanaka Akira <akr@...> 2007/07/11

In article <4694338C.7090303@sarion.co.jp>,

[#31183] Re: Random — "NAKAMURA, Hiroshi" <nakahiro@...> 2007/07/11

-----BEGIN PGP SIGNED MESSAGE-----

[#30971] Linux/ia64で'ucontext_t' undeclared — akira yamada / やまだあきら <akira@...>

最近のRuby 1.9をLinux/ia64上でmakeしようとすると

16 messages 2007/06/13
[#30973] Re: Linux/ia64で'ucontext_t' undeclared — Yukihiro Matsumoto <matz@...> 2007/06/13

まつもと ゆきひろです

[#30974] Re: Linux/ia64で'ucontext_t' undeclared — akira@... 2007/06/13

Yukihiro Matsumoto さんは書きました:

[#30975] Re: Linux/ia64で'ucontext_t' undeclared — Yukihiro Matsumoto <matz@...> 2007/06/13

まつもと ゆきひろです

[ruby-dev:30865] Re: block wrapper

From: Tanaka Akira <akr@...>
Date: 2007-06-01 02:51:42 UTC
List: ruby-dev #30865
In article <465F6222.9090404@atdot.net>,
  SASADA Koichi <ko1@atdot.net> writes:

>  ありがとうございます。動かしてみたんですが、結果の見方がわか
> りませんでした。最初に fail と出た例を引用します。

最初のフィールドから以下の通りです。

1. 成功/失敗
2. ブロック呼び出し形式
3. ラッパー / vの値
4. ブロックの指定形式 (&l は &lambda {...}, &p は &proc {...})
5. ラッパーを通さないときの結果 [v1, ...] もしくは発生した例外
6. ラッパーを通した時の結果 [v1, ...] もしくは発生した例外

つまり

def m(&b)
  ブロック呼び出し形式
end
m(ブロックの指定形式)

としたときと、

def m(&b)
  ブロック呼び出し形式
end
def w
  m ラッパー
end
w(ブロックの指定形式)

としたときで、最初の呼び出しに付けたブロックに渡される値がど
う変わるかを示しています。変わっていたらラッパーになっていな
いわけです。

>> fail    b.yield()       {|*v|yield(*v)}/[]      &l{|v1,|}       #<ArgumentError:_wrong_number_of_arguments_(0_for_1)>   [nil]

上記のは

def m(&b)
  b.yield()
end
m(&lambda {|v1,| p [v1] })

としたときと、

def m(&b)
  b.yield()
end
def w
  m {|*v| yield *v }
end
w(&lambda {|v1,| p [v1] })

で、前者が ArgumentError になり、後者がそうはならずに v1 が nil になることを示しています。 

>  次に例外が出ない最初の例を引用します。
>
>> fail    b.yield([])     {|*v|yield(*v)}/[[]]    &l{|v1,|}       [[]]    [nil]

これは

def m(&b)
  b.yield([])
end
m(&lambda {|v1,| p [v1] })

としたときと、

def m(&b)
  b.yield([])
end
def w
  m {|*v| yield *v }
end
w(&lambda {|v1,| p [v1] })

としたときで、v1 が前者で [] になり、後者が nil になることを示しています。
-- 
[田中 哲][たなか あきら][Tanaka Akira]

In This Thread