langsmith:139
From: Yukihiro Matsumoto <matz ruby-lang.org>
Date: Thu, 7 Oct 2004 12:35:57 +0900
Subject: [langsmith:139] Re: 例外処理:Eiffel とRuby
まつもと ゆきひろです In message "Re: [langsmith:138] Re: 例外処理:Eiffel とRuby" on Thu, 7 Oct 2004 11:29:28 +0900, Fumisky Wells <ttn3w7u2fs mx6.ttcn.ne.jp> writes: |さて、例外処理の実装として、 | |1) エラーコード(やメッセージやエラーオブジェクト)を伴うか否か |2) rescue句(Java/C++系 では catch ブロック)の最後で呼び出し側に伝搬するか否か |3) retryできるか否か |4) 任意の文やブロックで rescue句(Java/C++系 try-catch)が書けるか |5) 構文的に美しいか(かなり主観入っています。櫛形文法か try{}catch{}か | という意味だとご理解下さい) 2だとDbC以外の目的に例外が使えなくなるような気がします。 前のメールにも書きましたが、エディタで「openするファイルが存 在しない」という事態に対処するrescue節が行うべきことは、「エ ラーメッセージを出した後、なにごとも無かったようにイベントルー プに戻る」ことだと思いますが、2ではこれは実現できないのでは ないでしょうか。 そういう理由で、多分Eiffel以外で2がyである言語はないと思います。 |DBC に基づけば 2) == y であるべきですが、こうやって表を眺めてみると、Java/C++, Ada, CLU, Lisp が全て 2) == n なら、DBC って制約がきつすぎる考えなのかな、 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 ]