Scala

PHP5.4とScalaのトレイト比較

PHP5.4にはトレイトという文法が導入されて、多重継承の便利さが享受できるようになるそうです。 いろいろ試してみることにしました。トレイトといえば代表選手はScalaですね。Scalaでいうトレイトは、インターフェースの定義とメソッドの実装を同時にやって…

ファンクタがなければクロージャを食べればいいわ

次のJDK入ってたかもしれない「クロージャ」、見送りになってそれはそれで良かったんけど、そもそも、どういう仕様のものだったのか、いまごろ気になってきました。というのも、明らかにいまJavaの魅力は相対的に落ちてて、「面倒な安全装置のついた機械」よ…

ナベアツ算で知るOCamlとScalaの違い

学び始めて最初っからずーっとなんですが、Scalaが従来の関数型に対してオブジェクト指向とのハイブリッドだと言われるのはどういう意味でなんだろう? という疑問がありました。関数型言語でありながら、言語にオブジェクト指向機能があり、再代入が可能な変…

F# 型互換性の謎 Scalaと比較で

めざせ自然言語プログラミング by F# - なんたらノート 第二期のコメントより。 let hoge x = string x;; と定義した obj -> string となる型の関数が、引数として純粋なobj型以外の変数を受け入れるようになっていたことが高評価ポイントでした。 って、obj…

Scalaで話すように素数

最近Scalaが面白いので、例によって「話すように素数」をやってみました。Python 話すようにプログラムするPythonチュートリアル - なんたらノート 第二期 続・話すようにプログラムするPythonチュートリアル - なんたらノート 第二期Ruby Rubyで話すように…