[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 2chのread.cgiへ]
Update time : 05/10 00:53 / Filesize : 101 KB / Number-of Response : 539
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

C#終了のお知らせ



221 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 19:10:55 ]
C++は、言語拡張にとても慎重だ。
ライブラリでカバーできることはライブラリでやる、という哲学がある。

C#は、割とホイホイ言語機能を拡張する。
もちろん、開発しているのが事実上Microsoftだけだから可能という要素もある。

「yieldステートメントは、匿名メソッドまたはラムダ式の内部では使用できません」というエラーがでている。
どうしてダメなんだろうか。
それはきっと、yieldはプログラマの知らないうちに匿名クラスを作っていて云々とか、そういうよくわからない理由があるのかもしれない。
直感的には、使えてもいい文脈だと思う。が、処理系の実装上、ダメ。そういうのは汚い。

言語拡張が悪いことだとは言わない。
けれど、一見できても良さそうなことが、こっちの場合にはOKだけどこっちの場合にはダメとか、
いわゆる忌み嫌われる「場合分け」が多くなってきてるんじゃないかと思う。
switch文で幾度も分岐しているような感じがする。
そんなのはコンパイラを作る人も大変でしょう。

C++はD&Eなんかで、「どうしてそういう設計になっているのか」が説明されている。
「The D&E C#」が是非とも読んでみたい。DとEにF(Future)もつけてくれるといいな。






[ 続きを読む ] / [ 携帯版 ]

全部読む 前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<101KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef