ものがたり(旧)

atsushieno.hatenablog.com に続く

C++/CLI: 新しい言語には新しい名前が必要だ

そういうコメントが、ECMA 372についてイギリスから出ている(PDF)ようだ。言われてみれば、そりゃそうだ。


At the time this project was launched in 2003, participants described it as an attempt to develop a "binding" of C++ to CLI, and a minimal (if still substantial) set of extensions to support that environment. C++/CLI is intended to be upwardly compatible with Standard C++, and Ecma TG5 have gone to praiseworthy efforts to guarantee that standard-conforming C++ code will compile and run correctly in this environment.

Nevertheless, we believe C++/CLI has effectively evolved into a language which is almost, but not quite, entirely unlike C++ as we know it. Significant differences can be found in syntax, semantics, idioms, and underlying object model. It is as if an architect said, “we're going to bind a new loft conversion on to your house, but first please replace your foundations, and make all your doors open the other way.” Continuing to identify both languages by the same name (even though one includes an all-too-often-dropped qualifier) will cause widespread confusion and damage to the industry and the standard language.

C++/CLIはもともとC++言語をCLIにサポートするための企画で、それはまことにけっこうな事だったのだけど、出てきたモノは結局C++とは全然違う言語になっちゃっているわけだし、こんなものにC++という名前を付けるのは良くない、というのが大意。建築士が云々っていうくだりが何とも皮肉である。