Followup-To: fj.net.words です。
2003年11月28日(金)20時07分発信の
<YAS.03No...@kirk.is.tsukuba.ac.jp>すなわち
"Array and pointer" と題した記事より
> 私の感覚だと、「配列の名前だけ書いたら先頭要素のポインタにな
> る」という仕様は、仕様のバグだと思います。歴史的に、配列のよ
> うに(普通は)大きいメモリのコピーを禁止したかったというのは、
> わかります。たとえば、関数呼出しの時に
仕様の不具合は「バグ」ではなく、敢えて英語で表現するならば
「エラー」だと思うんですが、どうでしょうか。
========================================================================
「クリスマスとハロウィンは正確に一致するんですよ」 -- A.Asimov --
--
中川 恒雄 ( T.Nakagawa ) mailto:yae...@kikansha.jp
http://www.kikansha.jp/~yaemon/
T.P.S.Nakagawa wrote:
> パイプ喫いの中川と申します。
>> 私の感覚だと、「配列の名前だけ書いたら先頭要素のポインタにな
>> る」という仕様は、仕様のバグだと思います。歴史的に、配列のよ
>> うに(普通は)大きいメモリのコピーを禁止したかったというのは、
>> わかります。たとえば、関数呼出しの時に
> 仕様の不具合は「バグ」ではなく、敢えて英語で表現するならば
> 「エラー」だと思うんですが、どうでしょうか。
ポリシーの違いでしょう。
Cを高級言語として捉えたい人は古今後を絶たず、
そういう観点からはバグですが、Cは高級アセンブラだと
考えるならば当然の仕様です。所詮変数名はロケーション
に対するラベルの変種なのだから。
高級アセンブラ派からいわせると、 = で、配列全体が代入
できるのは改悪(複雑/CPUを喰うことは、ソースコードでみても
行数が多くなる、という原則が曲げられてるから)(笑)。
> 高級アセンブラ派からいわせると、 = で、配列全体が代入
> できるのは改悪(複雑/CPUを喰うことは、ソースコードでみても
> 行数が多くなる、という原則が曲げられてるから)(笑)。
でもstructだと=で代入できる、というのと整合性が… 久野
In article <bqa97m$mes$1...@newsserv.ics.es.osaka-u.ac.jp>
SAITOH akinori <sai...@ist.osaka-u.ac.jp> writes:
> 大阪大学の齊藤です
> 高級アセンブラ派からいわせると、 = で、配列全体が代入
> できるのは改悪(複雑/CPUを喰うことは、ソースコードでみても
> 行数が多くなる、という原則が曲げられてるから)(笑)。
禁止してもいいけど、構文レベルというよりは、意味レベルで禁止
したらいいんじゃないかという話をしているわけです。
Linux の fork のコードで、プロセス構造体を *new = *old のよ
うにコピーしているんですけど、最初見落としちゃって。
> Cを高級言語として捉えたい人は古今後を絶たず、
CPU も速くなったから、それに合わせて考え方を変えてはどうか、
という話です。
In article <bqaava$n...@utogw.gssm.otsuka.tsukuba.ac.jp>
ku...@gssm.otsuka.tsukuba.ac.jp writes:
> 久野です。
> でもstructだと=で代入できる、というのと整合性が… 久野
内部に配列を含む構造体が、= で代入できるのに、構造体単独なら
代入できないんですよ。今は。
\\ 新城 靖 (しんじょう やすし) \\
\\ 筑波大学 電子・情報 \\
----------------------------------------------------------------------
From sai...@ist.osaka-u.ac.jp Sat, 29 Nov 2003 23:07:21 +0900
From: SAITOH akinori <sai...@ist.osaka-u.ac.jp>
Newsgroups: fj.net.words
Subject: Re: 仕様のバグ
Date: Sat, 29 Nov 2003 23:07:21 +0900
Message-ID: <bqa97m$mes$1...@newsserv.ics.es.osaka-u.ac.jp>
大阪大学の齊藤です
T.P.S.Nakagawa wrote:
> パイプ喫いの中川と申します。
>> 私の感覚だと、「配列の名前だけ書いたら先頭要素のポインタにな
>> る」という仕様は、仕様のバグだと思います。歴史的に、配列のよ
>> うに(普通は)大きいメモリのコピーを禁止したかったというのは、
>> わかります。たとえば、関数呼出しの時に
> 仕様の不具合は「バグ」ではなく、敢えて英語で表現するならば
> 「エラー」だと思うんですが、どうでしょうか。
ポリシーの違いでしょう。
Cを高級言語として捉えたい人は古今後を絶たず、
そういう観点からはバグですが、Cは高級アセンブラだと
考えるならば当然の仕様です。所詮変数名はロケーション
に対するラベルの変種なのだから。
高級アセンブラ派からいわせると、 = で、配列全体が代入
できるのは改悪(複雑/CPUを喰うことは、ソースコードでみても
行数が多くなる、という原則が曲げられてるから)(笑)。
From ku...@gssm.otsuka.tsukuba.ac.jp 29 Nov 2003 14:37:30 GMT
From: ku...@gssm.otsuka.tsukuba.ac.jp
Newsgroups: fj.net.words
Subject: Re: 仕様のバグ
Date: 29 Nov 2003 14:37:30 GMT
Message-ID: <bqaava$n...@utogw.gssm.otsuka.tsukuba.ac.jp>
新城@筑波大学さんは
2003年11月30日(日)01時36分発信の
<YAS.03No...@kirk.is.tsukuba.ac.jp>すなわち
"Re: Array and pointer" と題した記事にて
こう書かれました。
> 新城@筑波大学情報です。
> C言語の話は、Followup-To: fj.comp.lang.c でお願いします。
私は「仕様」に対して「バグ」という言葉を使うのが正しいのか
「仕様」に対して使うのはは「エラー」じゃないのか、ということで
fj.net.words に振ったんですが...
そっちのお題についてはフォローがつかなかったわけです。
> 私は「仕様」に対して「バグ」という言葉を使うのが正しいのか
> 「仕様」に対して使うのはは「エラー」じゃないのか、ということで
> fj.net.words に振ったんですが...
「仕様のバグ」という言い方は私の周囲でもします.もちろん
その後の実装と,実装にはバグがあるというのが共通認識の上で,
です.まあ半分冗談みたいなところもありますが.
この夏に会った日立の人材育成分野のプロの方も,やはり
「仕様のバグ」という語をおっしゃってました.
----------- ニュースはみんなのために /|\ メールは個人のために -----------
太田 尚志 - OTA Takashi - http://web.sfc.keio.ac.jp/~t00156to/ ICQ#:39782589
エラー =動作などが何らかの意味で不正であること
(製作者の意図に沿っているかどうかには関わらない)
バグ =製作者の意図に反した動作をすること
設計ミス=製作者の意図自体に欠陥があること
といった感じかな?
「仕様のエラー」だと、製品が不適切な動作をするというより、
そもそもその仕様に沿って製品を製作すること自体が不可能
というような印象を受けます。
In article <bqh0ii$5jv$1...@news.sfc.keio.ac.jp> t00156...@sfc.keio.ac.jp writes:
> 「仕様のバグ」という言い方は私の周囲でもします.もちろん
>その後の実装と,実装にはバグがあるというのが共通認識の上で,
>です.まあ半分冗談みたいなところもありますが.
というか、
「仕様かバグか」というような言い方をする
という事実認識が前提ですよね。
「バグではない、仕様だ」という言い抜けに対して、
「仕様自体がバグってるじゃないか」と言い返すようなレトリックです。
戸田 孝@滋賀県立琵琶湖博物館
to...@lbm.go.jp