[1053] Re:externと「外部結合」
投稿者:yuya
2007/09/03 14:29:41
▼ > 要するに言語仕様上の extern と、英語の単語 external の不一致に違和感がある
> っつーことでっか
そうです。すでに決まっちゃったものに文句を言っても仕方ないですが、
「説明するときに名前との関連を前面に出すか、抑えるか」という選択肢は残されています。
そもそも結合は定義サマが決めるのが筋なのであって、
定義でない宣言がいくら結合を声高に主張しても、
「定義との食い違いを処理系に見つけてもらおう」というのでない限り無意味ですよね。
int hoge = 1;
static int hoge;
でエラーを出してくれるならまだしも、未定義動作ですし。
それならば、「参照に(ほぼ)特化した、結合に関してはオールマイティな」
externのようなキーワードが用意されているのは合理的だと思いますが、
なにもそんな名前じゃなくても良かろう、と思うわけです。
# externは実は外部宣言(external declaration)から来ているのかも、というオチは……。
▼ > プログラム言語のキーワードをいちいち英語とつき合わせていると違和感ありですな。
> 俺的に一番違和感があるのは const であります。
> const ではなく readonly にしてくれると **俺的には** 解消です。
私もまったく同じように思います。というか、
「文字通りではないことに気付いているかどうか」によって、
理解度が測れてしまうこと自体(Cはこんなのばっかり)、なんて不健全な状況なんだ(^^;)
#define INTERN static
#define READONLY const
...
▼レベル別教授法はとても参考になりました。
特に「紹介状」は使わせてもらっていいでしょうか。
「エキスパートCプログラミング」には「(定義でない宣言は)税関の申告のようなものだ」とあり、
初めて読んだときは???でしたが。