Statistical Programming

2013-07-01から1ヶ月間の記事一覧

Scala 関数のカリー化と部分適用

Scalaにはカリー化と部分適用という機能が備わっています。 まずはカリー化から。 カリー化とは、複数の引数を受け取る関数を一つの引数を受け取る関数の積み上げ形にすることです。もしくは、複数の引数を取る関数を一引数を取る関数のチェインにすると表現…

Scala 暗黙の型変換、implicit !?

ScalaにはJavaにはない暗黙の型変換という機能があります。これはScalaに自動的に呼び出させることの出来る、型変換用の関数を定義できる機能です。 関数定義の最初に implicit というキーワードをつけて、この暗黙型変換関数を定義します。この関数は型変換…

Scala 関数の書き方

Scalaでは関数の書き方がJavaとは異なる上、Javaよりもより強力な関数的機能が備わっています。まずは関数の定義の仕方から。Scalaでは記述方法がかなり柔軟なためいろいろあるのですが、代表的な書き方を二つほど。 def 関数名(引数の変数名:変数の型):戻り…

簡潔な記述のScala

ScalaはJavaと比べてもいろいろな部分で簡潔です。その最たるものが型推論ではないでしょうか。 • 型推論;JavaではたとえばScannerクラスのインスタンスを作成し変数に入れる場合以下のように型を明示しなければなりませんでした。 Scanner sc=new Scanner(…

Scala 並行処理のActorさん

ちょっと話が飛んじゃって申し訳ないのですが今勉強中の並行処理についてまとめてみます。Scalaでは並行処理のためにいくつか選択肢があり、そのうちのひとつがActorです。ではさっそく試しにコードを書いていきます。メッセージを受け取りそれに対応した値…

Scala開発環境構築

Scala言語を利用するにあたってこれは必要じゃない??と個人的に思うもののインストールの仕方についてです。 というわけでScala言語、sbtというビルドツール、playというframework, 最後にScala IDE for eclipseをインストールしていきます。 僕はmac派な…

Scalaとは…?

こんにちは、今日はScalaの特徴についてまとめていきます。そもそもScalaはScalable Languageの略で、規模の違いによる影響を最小限に抑えよう!として開発された言語のようです。以下、主な特徴を列挙してみました。 • 純粋オブジェクト指向=プリミティブ…

Hello Scala!

Scala初心者の方も、Java経験者の方もこんにちは。かく言う私もJava経験者でScala初心者ではありますが学んだことをつらつらと綴っていきみなさんのお役に立てたらと思います。それでは Hello Scala!!