nullを許容しないように書けたらいいのに

何だか前も書いたような気がしないでもないのですが、

nullを排除するための方法としては、コンストラクタで引数チェックを行ってイミュータブルにしてしまう方法を使っている。こうすれば、単体テストを行うことでnullが絶対こないオブジェクトであるという安心感が持てる。まぁ、全部をこの方法で構築するのは非現実的なんだけどね。

NullPointerException - ぐるぐる〜

そもそも、"String==null"の状態は、バグの一種だと思います。

NullPointerExceptionを見たらバグと思え - argius note

という話を受けて、
キーワードとして、引数とか変数宣言時、戻り値などに「nullを許容しない」という指定が書けたらいいのになあ、とか思いました。
デフォルトでnullを許容せず、nullableでnullを許容する、が良いのかもしれないですけど。

愚直だけど、

nonnull String hogehoge = "hoge";

nonnull String hoge(nonnull String arg1, nonnull String arg2)
{
    ...
}

しかし、書いてみると冗長な気がする。orz