ひしだまの変更履歴

ひしだまHPの更新履歴。
主にTRPGリプレイの元ネタ集、プログラミング技術メモと自作ソフト、好きなゲームや音楽です。

Java・Scalaで何も無い事を表すキーワード

2015-04-19 15:30:18 | PG(Scala)

けっこう昔にも話題になってたと思うんだけど、Scalaで「何も無い事を表すキーワードが多すぎる」って言う人がいるみたい?
(ぐるぐるさんの『Scalaのnull/Nothing/Nil/Noneはやりすぎなのか?』を見て思い出した)

でもねー、Javaと比べてみても、多すぎると言うほど多くは無いと思うんだよね。 

JavaScala説明
null null 何も参照していないことを示す値。
null type(空型) Null nullの型。
Collections.emptyList() Nil 空のListインスタンス。
Optional.empty() None 空のOptionインスタンス。
void Unit メソッドで戻り値が無いときに使う型。
- Nothing 値が無い型? 

Javaに無くてScalaだけに有るのは、Nothingのみ。
少なくとも、Javaと比較して多すぎるって言ってる人は、Javaを知らないだけなのでは?
(とか言っといて、自分はJavaもScalaも基本的なことしか知らないので、他にもいっぱいあるのかもしれないけど^^;)

(文句を言うのなら、Listの::クラス::メソッドの方が、よっぽどややこしいと思う^^;) 



最新の画像もっと見る

2 コメント

コメント日が  古い順  |   新しい順
Unknown (sugara)
2015-04-19 17:34:43
empty() や emptyList() はキーワードではないですよ
Scalaに無いことを表すキーワードが多いと言ってる人は、「キーワード」の多さを言ってるのであって、emptyList()や空配列でキーワード相当のことを表現できるのは当然です。

言語の話なのかライブラリまで含めた話なのか実際のコーディングの話なのか区別されてはどうでしょう

Scalaの「無いキーワード」多くて大変っていうけど、Javaで同じことしようとするともっと大変だよ っていうなら納得です
返信する
Unknown (ひしだま)
2015-04-24 00:34:07
empty()とかも長いキーワードみたいなものだと思いました。
(逆に言えば、ScalaのNilやNoneもライブラリーだと思います)
で、長い分、短い単語や略語よりは分かり易いのかもしれません。
返信する

コメントを投稿