パスワードを忘れた? アカウント作成
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。

null参照の考案は10億ドル単位の過ち?」記事へのコメント

  • by Anonymous Coward
    NULLがない場合は、何で初期化したらいいんでしょうか?

    # え?NULLがあっても、NULLなんかでは初期化しませんか。そうなんですか。
    • Re: (スコア:1, 興味深い)

      by Anonymous Coward
      エラーや脆弱性、システムクラッシュの原因とならない安全なオブジェクトがあればいいんじゃないかなぁ。つかどうしてないんだろ。
      参照はがしてもSEGVらず、数値として評価したら0、文字列として評価したら空文字、代入しても何も起きず、関数としてコールしたらすぐ戻り値0で帰ってきて、パス名とかネットワークアドレスとして開いたら/dev/nullみたいな。
      • Re:NULLがない世界 (スコア:2, 参考になる)

        by Anonymous Coward on 2009年03月06日 1時16分 (#1525828)

        >あればいいんじゃないかなぁ。つかどうしてないんだろ。

        それれが有る言語を「高級言語」と呼びます。

        いささか乱暴な言い方ですが、高級とはおおむねそういう方角を向くことを言います。

        一方で、そういうモノを見事に動かすには結構な実行時コストがかかるわけで、
        そのコストを嫌って「自己責任でやってね」という方針にしてるのが「低級言語」。

        まず何が起きるか判ったもんじゃないC言語のレベル。
        Javaはもう少し上のレベルで、未定義とまでは言わないものの、すごく扱いづらい挙動をするだけ。
        Rubyは更に少し上のレベルで、nilもまたオブジェクトであり、かつ振る舞いが好きなようにカスタマイズできる。method_missingとか使えば「状況ごとに」振る舞いを変えることも出来る。

        まあいろいろな高級度にそれぞれの言語が位置しているわけです。

        親コメント

アレゲは一日にしてならず -- アレゲ見習い

処理中...