アカウント名:
パスワード:
静的型付けがあると機械的に検証しやすいのでバグ削減効果があるのはわかるが、それも程度問題じゃないかな?文法的にも記述的にもなんの問題もないが、その動作では都合が悪いという仕様バグの方がよほど大きな問題であるケースが多数派だと思うのです。
:wq
動的型付けには、ある型を関数に渡せるかが、関数の実装に依存してしまう問題がある。
add(x,y)という関数に、文字列を引数として渡せるかは宣言からでは判断できないし、add(x,y)の実装が変更されれば、ある日突然エラーになる。add(int x,int y)なら、関数の実装者は、整数型以外考慮しなくて済むし、呼び出す側は実装を見なくても関数が扱える型がわかる。
結局存在しないメソッドが呼び出せない以上、動的型付けでも見えなくなるだけで型には制約される。型の前提なしでコードは書けない。関数が要
自分は最近PHPしか書かないので他の言語のことは不案内だけど、
typehintingくらい(みんなが嫌いな)PHPにだってあるよ。今風の言語はそのくらいのことできて当たり前だとおもってたんだけど、違うの?
Rubyはそういうのない
ありゃ型という概念に全力で喧嘩を売ってるからな流れ弾を食らいたくなければ全力でテストコードを書き続けなければならないマゾ用言語やで
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
ハッカーとクラッカーの違い。大してないと思います -- あるアレゲ
それでも銀の弾丸ではない (スコア:3, 興味深い)
静的型付けがあると機械的に検証しやすいのでバグ削減効果があるのはわかるが、それも程度問題じゃないかな?
文法的にも記述的にもなんの問題もないが、その動作では都合が悪いという仕様バグの方がよほど大きな問題であるケースが多数派だと思うのです。
:wq
Re: (スコア:2)
動的型付けには、ある型を関数に渡せるかが、関数の実装に依存してしまう問題がある。
add(x,y)という関数に、文字列を引数として渡せるかは宣言からでは判断できないし、add(x,y)の実装が変更されれば、ある日突然エラーになる。
add(int x,int y)なら、関数の実装者は、整数型以外考慮しなくて済むし、呼び出す側は実装を見なくても関数が扱える型がわかる。
結局存在しないメソッドが呼び出せない以上、動的型付けでも見えなくなるだけで型には制約される。型の前提なしでコードは書けない。
関数が要
Re: (スコア:0)
自分は最近PHPしか書かないので他の言語のことは不案内だけど、
typehintingくらい(みんなが嫌いな)PHPにだってあるよ。
今風の言語はそのくらいのことできて当たり前だとおもってたんだけど、違うの?
Re: (スコア:0)
Rubyはそういうのない
Re:それでも銀の弾丸ではない (スコア:0)
ありゃ型という概念に全力で喧嘩を売ってるからな
流れ弾を食らいたくなければ全力でテストコードを書き続けなければならないマゾ用言語やで