たろー先生、Kotlinがわからないです(´;ω;`)
- daneko0123
- 2963
- 0
- 0
- 0
@ngsw_taro kotlinで ((1 .. 10) map {hoge(it)} filter { it != null }).fold(0){ (a:Int,b:Int) -> a + b } って書くと怒られるんだけどどうすればいいの?
2013-12-15 00:59:29@daneko0123 いやフィルタでnullチェックしてもNotNull型にはならないので専用のメソッドを使ってNullableを省く必要があります。たぶん
2013-12-15 01:04:11@ngsw_taro やりたい事はこれだけなんです… たろーくんがNull安全Null安全 オーバーヘッドなくて素敵素敵いうから、検証したくて… https://t.co/eJOXISQFhQ
2013-12-15 01:24:25@gakuzzzz @daneko0123 それはもちろんですけどそこまでやるメリットがないんじゃないですか?あとOptionは単なる型なんでことりんでも導入はできますよ。実際、そういうライブラリがあります。個々の趣味に合わせるといいかも。
2013-12-15 01:41:37@daneko0123 @ngsw_taro まさしく水島さんが前に主張されてた部分におもいっきり引っ掛った感じですね^^;;; http://t.co/gIOkMGmfen
2013-12-15 01:43:16使ってみると、「実際にはnon-nullableなのに」型としてはnullableなのが結構でてきて、コンパイラによるエラーを回避するためだけにチェック構文入れるという本末転倒なことになって、実際にはそんなに便利じゃないなと思った。
2013-11-27 13:23:57@gakuzzzz @daneko0123 JVMで動かしてかつJavaとの相互運用性を保ちたい、でもJavaは嫌だというのが合わさって、妥協点を探した結果がことりんのNull安全だと思います。妥協から生まれる仕組みなのでもちろんよくない点も少なくないと思いますが利点もあります
2013-12-15 01:47:58ことりんみたいにNull安全を導入するデメリットは、コードが書きにくい、以外にはないと思うけど。それは動的言語好きな人が静的言語を面倒だと感じるのと同じ
2013-12-15 01:51:09基本的に面倒な動作は安全をもたらす。例えば核ミサイルの発射スイッチは普通のスイッチじゃなくて、数ヵ所の遠隔地で1秒の狂いもなく同時に押さなければ発射しないとか。つまりそういうことだ。必ずトレードオフはあるから、どこに重きを置くかは人それぞれだけど。そこは好みとか思想の世界。
2013-12-15 01:58:25