[前][次][番号順一覧][スレッド一覧][生データ]

langsmith:151

From: Yukihiro Matsumoto <matz ruby-lang.org>
Date: Mon, 11 Oct 2004 00:52:39 +0900
Subject: [langsmith:151] Re: 例外処理:Eiffel とRuby

まつもと ゆきひろです

In message "Re: [langsmith:150] Re: 例外処理:Eiffel とRuby"
    on Mon, 11 Oct 2004 00:16:11 +0900, W <ttn3w7u2fs mx6.ttcn.ne.jp> writes:

|ここからは私見ですが、デフォルトの動作としては Eiffel的なほうが私としては好ましかと思っています。

あまり「好ましい」ケースが思い付かないんですが。rescueとか
catchとかで例外を捕捉したということは

  * 例外が発生することを予想できた
  * かつ、例外に対する対処方法がある

ってことなんだと思うんですが、対処できるんなら、対処済みです
から、上に伝搬する必要はないように思いますが。あるいはその場
所では完全な対処はできなくて上に依頼する必要があるケースもな
いとは言えないですが、そういう場合には明示的にthrow(or
raise)すればよいわけで、デフォルトにした方が良いというほど頻
繁にそんなケースがあるとはあまり思えません。というか、私自身、
例外のある言語でのプログラミング経験は長いですが、そんなケー
スには一度も遭遇したことがありません。

|(他の例でいうなら、make vs shell でしょうか。

むしろshellはCなどの例外のない言語、makeは例外のある言語の実
行モデルではないかと思います。これらは捕捉してませんから、今
の話とは直接関係ないでしょう。

|さて、最後に、ここら辺(ブロックごとの rescue, 例外処理の default は例外の上位への伝播を伴う)
|を取り入れた言語とは、果たして使えるのか?というところが一番の私の関心ごとでして。
|作ってみるしかないのかな。

というか、Wさんが、なぜ嬉しいと思うのか、なぜデフォルトであ
るべきか、という点を示してくださると意見が出せると思います。
現時点での私の考えは「(Eiffelのように例外はDbCだけに使うとい
うのでない限り) 嬉しい理由は見当たらない」です。

                                まつもと ゆきひろ /:|)

--
ML: langsmith quickml.atdot.net
使い方: http://www.atdot.net/~ko1/quickml

[前][次][番号順一覧][スレッド一覧][生データ]

       135 2004-10-07 00:06 [ttn3w7u2fs mx6.ttcn.] 例外処理:Eiffel とRuby                  
       136 2004-10-07 00:41 ┗[matz ruby-lang.org  ]                                       
       138 2004-10-07 11:29  ┗[ttn3w7u2fs mx6.ttcn.]                                     
       139 2004-10-07 12:35   ┣[matz ruby-lang.org  ]                                   
       144 2004-10-07 21:49   ┃┗[randy mvd.biglobe.ne]                                 
       145 2004-10-07 22:04   ┃ ┗[matz ruby-lang.org  ]                               
       146 2004-10-08 21:59   ┃  ┗[randy mvd.biglobe.ne]                             
       150 2004-10-11 00:16   ┃   ┗[ttn3w7u2fs mx6.ttcn.]                           
->     151 2004-10-11 00:52   ┃    ┗[matz ruby-lang.org  ]                         
       154 2004-10-13 00:00   ┃     ┗[ttn3w7u2fs mx6.ttcn.]                       
       155 2004-10-13 01:30   ┃      ┗[matz ruby-lang.org  ]                     
       140 2004-10-07 14:23   ┣[takehiko eel.rdc.tos]                                   
       141 2004-10-07 14:33   ┃┗[matz ruby-lang.org  ]                                 
       143 2004-10-07 16:50   ┃ ┗[takehiko eel.rdc.tos]                               
       142 2004-10-07 15:20   ┣[shiro lava.net      ]                                   
       156 2004-10-14 12:32   ┃┗[maeda-langsmith atus]                                 
       147 2004-10-08 22:21   ┗[ko1 atdot.net       ]                                   
       148 2004-10-09 06:42    ┗[shiro lava.net      ]