たまにこういう話が出てくるけれど、みんな漠然とした不安で話をしている感じがするので、 (もちろんこれもまた予想でしかないですが)、多少は自分はScala事情に詳しいと思うので、ある程度の予想や実情をtweetしたので、せっかくなのでまとめておきました

たまにこういう話が出てくるけれど、みんな漠然とした不安で話をしている感じがするので、 (もちろんこれもまた予想でしかないですが)、多少は自分はScala事情に詳しいと思うので、ある程度の予想や実情をtweetしたので、せっかくなのでまとめておきました
Twitterしてたら目に入ったので軽く。 Javaにおけるnull。これまでとこれから この後のスライドで、 Scalaにおける「何もないもの」の分類はやり過ぎ感はある と言われているんですが、ある程度は誤解に基づく意見だよなぁこれは、ということを言っておこうかなと。 Scalaについて 日本では説明が不要なくらいScalaって有名になってると思うんですが一応。 ScalaはJVMの上で動作する、(クラス指向の)オブジェクト指向プログラミングと関数型プログラミングを融合させた言語です。 そして、Scalaのコア機能はどちらかというとオブジェクト指向プログラミング寄りです。 オブジェクト指向プログラミングをベースに、関数型の色々なものを実現している感じです*1。 オブジェクト指向プログラミング的な機能として真っ先に思いつくのは何でしょうか? 割と上位の方に、「継承」とか「型階層」とか来るん
val is better than Java's final? JavaScript hoisting var r = double(1) + triple(1); function double(x) {return x * 2;} var triple = function(x) {return x * 3;} Throws: java.lang.NullPointerException at Vals.<init>(Vals.scala:2) Simplified class Vals { println(answer) private[this] val answer = 42 } Prints... 0 return in lambda def samples(xs: TraversableOnce[Int]) { xs map {x => return x * 10} for
前回 の記事では、関数型プログラミングの概念とJava8による実装例を示しました。しかしJava8のリリースは来年まで延期されてしまったため、今すぐ試してみるには少しハードルが高いかもしれません。 そこで今回は、Java7のJVM上で動作する代表的な関数型プログラミング言語、 Scala と Clojure を紹介します。 Scalaとは では、 Scala から紹介しましょう。 ScalaはJVM上で動作するプログラミング言語で、関数型の特徴とオブジェクト指向の特徴を合わせ持った、欲張りな言語です。 JVM上で動作するため、既存の膨大なJavaライブラリをそのまま流用でき、JVMのパフォーマンスチューニングノウハウを最大限活用することができます。またJavaよりも豊富な記述形式を持ちながらもJavaオブジェクトをそのまま扱え、強力な型推論を持った静的型付け言語でもあるため、定型的で冗
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く