バグの出にくい言語仕様を考える。

このエントリーをはてなブックマークに追加
952デフォルトの名無しさん:2006/01/15(日) 03:23:10
次スレはマ板だな
953915:2006/01/15(日) 09:27:22
>>932
「新規開発のほうが保守するより安上がりになる」という意味さ
954デフォルトの名無しさん:2006/01/15(日) 11:44:01
>>953
母体が 100倍以上あったら駄目ジャン。
つーか、テストの工数とか考えてないだろ。
955デフォルトの名無しさん:2006/01/15(日) 13:02:13
M$は数年毎にOSを新規開発してるからなぁ
ある意味脅威的だよなぁ
956デフォルトの名無しさん:2006/01/15(日) 13:08:53
新規開発じゃねぇだろ。単なる改造拡張。
957デフォルトの名無しさん:2006/01/15(日) 13:53:53
>>955
うわぁ頭悪いねキミ
958デフォルトの名無しさん:2006/01/15(日) 14:07:19
リッチな型情報を容易に使えること、というのが結論ということでよろしいか。
あと、馬鹿ネタ書いてる奴はマ板行け。
959デフォルトの名無しさん:2006/01/15(日) 14:11:54
>>864
-generic- 総称的プログラミング -programming-
http://pc5.2ch.net/test/read.cgi/tech/1079460996/
960デフォルトの名無しさん:2006/01/15(日) 14:20:08
関連?
型なし言語逝ってよし
http://piza.2ch.net/tech/kako/986/986355498.html
961デフォルトの名無しさん:2006/01/15(日) 14:35:02
>>943
並列型言語は、
プログラムの潜在的な並列性を完璧に検出・並列実行できるため、
逆に処理記述の粒度が細かくて、面倒というか、コードが長くなるらしい。
あと、関数型言語以上に発想というか考え方の違いが大きいとか。
いや、全然解ってないんだけど。
解ってる人ツッコミよろ
962訂正:2006/01/15(日) 14:35:31
>>944
並列型言語は、
プログラムの潜在的な並列性を完璧に検出・並列実行できるため、
逆に処理記述の粒度が細かくて、面倒というか、コードが長くなるらしい。
あと、関数型言語以上に発想というか考え方の違いが大きいとか。
いや、全然解ってないんだけど。
解ってる人ツッコミよろ
963デフォルトの名無しさん:2006/01/15(日) 15:27:34
豆腐を4ラインで製造する言語仕様を考える
964デフォルトの名無しさん:2006/01/15(日) 16:28:55
コンパイラ言語逝ってよし
965デフォルトの名無しさん:2006/01/15(日) 16:32:17
もうお父さん型無しだよ。
966デフォルトの名無しさん:2006/01/15(日) 16:37:10
カタナシヨーグルト
967デフォルトの名無しさん:2006/01/15(日) 17:02:42
話について行けない低脳ゴミPGが暴れてるな。
お前が早く業界から去ることが、お前も含めたみんなのためになる。
968デフォルトの名無しさん:2006/01/15(日) 17:59:08
オマエモナー
969デフォルトの名無しさん:2006/01/15(日) 18:35:02
Visual D
970デフォルトの名無しさん:2006/01/15(日) 19:12:05
Borland D Builder
971デフォルトの名無しさん:2006/01/15(日) 19:57:06
>>962
KLICの場合は書き手の感覚では、Prologと同じレベル。
バックトラックしないのだからまったく別の言語だが、
とくに粒度が細かいとか、コードが長くなることはない。
面倒臭さに至ってはこちらの方が楽。
972デフォルトの名無しさん:2006/01/15(日) 21:37:53
>>958
>>960
型無し言語スレ、最初はあほかと思ったけど、途中議論始めてからは良スレ化したね

>どうせなら、型と双璧をなす(俺主観)、「ロール」も
>チェック対象になるような言語が欲しいです。
何この俺
973デフォルトの名無しさん:2006/01/16(月) 00:50:26
>>960
結局、何年も前のスレと、似たようなこと話してるんだね、このスレ。
このスレ独自の話題もない訳じゃないが。
974デフォルトの名無しさん:2006/01/16(月) 00:52:30
その「ロール」って、上の方にあった、名前を型の属性にするってのと似てるな。
975デフォルトの名無しさん:2006/01/16(月) 01:33:43
c言語で
    int a = 1;
    int b = 3;
    float c = a / b;
で計算すると c=0 になってしまいます。
    float c = 1.0 * a / b;
だとちゃんと c = 0.3333 になります。
これって結構バグの温床になっているような気がするけど、
うまい回避方法ってありますか?
これはもうc言語特有の問題なんでしょうか。
976デフォルトの名無しさん:2006/01/16(月) 01:44:14
float c = (float)a / b;
977デフォルトの名無しさん:2006/01/16(月) 02:23:34
>>975みたいな言語仕様を理解できてない馬鹿が存在すると、
いくら言語が優れていても意味なー
978デフォルトの名無しさん:2006/01/16(月) 02:46:37
>>975
コンパイラが警告だしてくれりゃそれでいいんじゃない?
979デフォルトの名無しさん:2006/01/16(月) 09:07:53
>>973
言語の進化は、私たちが驚くに値するほどゆっくりしか進行していないと言うのが解釈として正しいと思うよ。
何処でも同じ話題が出ると言うことは、欲しい言語の方向は結構決まっているみたいなんだけどね。
980デフォルトの名無しさん:2006/01/16(月) 09:26:58
>>979
発想が何かに縛られているということではないかな。
981デフォルトの名無しさん:2006/01/16(月) 11:59:16
単に大昔に通り過ぎてすでに実装されている機能を知らない馬鹿共が
車輪の再発明さえもできずにそれを夢見てるだけ
982デフォルトの名無しさん:2006/01/16(月) 12:36:09
無知と馬鹿は違うし、車輪の再発明くらいはしてるだろ。
983デフォルトの名無しさん:2006/01/16(月) 12:42:09
それよりもどうやって車輪で毎日食べる豆腐が作れるかだ これでバグの温床が減るはず
984デフォルトの名無しさん:2006/01/16(月) 13:42:59
車輪だって4つ再発明すれば車ができぞ。
985デフォルトの名無しさん:2006/01/16(月) 13:45:15
>>984 実際最近の電気自動車の車輪は車輪の再発明に近いものがある
986デフォルトの名無しさん:2006/01/16(月) 15:03:36
>975
型の厳格な言語としてそれは当たり前の動作。
暗黙に変換される事こそバグの元だろ。
987デフォルトの名無しさん:2006/01/16(月) 15:32:47
>>986
1.0 を掛けると陽に移行したことになるの?
988デフォルトの名無しさん:2006/01/16(月) 15:44:31
私は頭の硬いCOBOLで、Cは解らないのですが、
>>975はそういう思い付きの言語仕様に対する
疑義のように読み取れますが。
989デフォルトの名無しさん:2006/01/16(月) 15:46:38
assert( typeof(a).float == YES ); みたいなの付けてチェックするとか
990デフォルトの名無しさん:2006/01/16(月) 15:50:10
Java流に書けばアサーションていうの必要ないんじゃん
991デフォルトの名無しさん:2006/01/16(月) 17:21:00
>>982
無知の自覚が無いのが馬鹿
そしてこのスレには明らかに馬鹿が居る
992デフォルトの名無しさん:2006/01/16(月) 17:36:58
強力な型付けがバグを減らすために重要って事が一つの結論なら

どういう文法であれば、型付けの煩雑さと、バグ削減の有用さを上手にまとめられるかとかの議論も欲しいな

既存の言語への拡張でも良いし、新しい言語を提案するのも良いし
うまく行けば後の世に繋がる
993デフォルトの名無しさん:2006/01/16(月) 17:57:28
Adaで書け
994デフォルトの名無しさん:2006/01/16(月) 18:50:37











                        いっそのこと論理型言語に乗り換えろ














995975:2006/01/16(月) 19:26:25
レスどうもです

>>976
だからそういう(float)のようなものを付けなければいけないことに
気づかないことが多いのではないかと思ったんです。

>>978
コンパイラはgccですが、警告は出してくれませんでした。

>>986
そんなもんですかねー?確かにこの計算で0を答えとして求めたい
という場合もあるかもしれないな。

>>988
そうです。いちいち型キャストとか考えなければいけないのは
めんどくさいと思ったので。

>>989-990
そんな方法があるんですか。勉強してみます。

>>991
ぎ、ギクッ
996デフォルトの名無しさん:2006/01/16(月) 19:54:11
暗黙のキャストが邪悪なのは常識
しかし,利便性と天秤にかけた結果敢えて残されている
利便性を捨てて避けたければTypedefで見かけ上別の型にしてしまえば良いだけの話
>>975は型が理解できていない初心者というだけ
997デフォルトの名無しさん:2006/01/16(月) 19:59:07
演算子の記号をもう一つ付け加えられればいいかと思うけどね

[int][浮動小数除算をする記号][int] が (float)[int]/(float)[int]) を糖衣したもの

の様な

…VBだと逆のは有るんだけどな
998デフォルトの名無しさん:2006/01/16(月) 20:11:02
int が何バイトか OS 毎に違うのではなく、言語で固定、ってのはどうよ。
999デフォルトの名無しさん:2006/01/16(月) 20:13:48
うっほっほー やっほっほっほ うっほほーい
1000デフォルトの名無しさん:2006/01/16(月) 20:17:10
次スレ
バグの出にくい言語仕様を考える2

http://pc8.2ch.net/test/read.cgi/tech/1137410170/
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。