Global Lens 2014 : Scroll over a film below for more info. Click here to book the 2014 series.

This document discusses Scala as a domain-specific language (DSL) for building other DSLs. Some key points: - Scala can be used to create internal DSLs within applications as well as external DSLs for defining domain concepts. - Examples shown include using Scala for TODO list management, entity-relationship modeling, and processing streaming data. - Scala's traits, classes, functions and other fe
りらっくみゃー @rirakkumya 【緩募:play2.0】play scalaでOptionの値をチェーンさせた場合にどんどん入れ子になっていくのをキレイに書く方法 http://t.co/woTldrG8 関数で外出しすれば見やすくなるけどいけてない #play20 #playframework #scala 2012-04-14 15:50:10 Yusuke KUOKA @mumoshu @rirakkumya (for (id2 <- Cache.get(id); result <- Cache.get(id2)) yield (Ok(result)) getOrElse (NotFound) とか・・ 2012-04-14 15:52:22
refactor.scala �?(᪪ �પ def index(id:String) = Action { getFirstData(id) } private def getFirstData(id:String) = { Cache.get(id) match { case Some(id2) => getSecondData(id2) case None => NotFound } } private def getSecondData(id2:String) = { Cache.get(id2) match { case Some(result) => Ok(result) case None => NotFound } } sample.scala ��પ ��>᪪ def index(id:String) = Action { Cache.get(id) match { ca
Effective Scala Marius Eriksen, Twitter Inc. marius@twitter.com (@marius) [translated by Yuta Okamoto (@okapies) and Satoshi Kobayashi (@scova0731)] Table of Contents 序章 書式: ホワイトスペース, 命名, インポート, 中カッコ, パターンマッチ, コメント 型とジェネリクス: 戻り型アノテーション, 変位, 型エイリアス, 暗黙 コレクション: 階層, 使う, スタイル, 性能, Java コレクション 並行性: Future, コレクション 制御構造: 再帰, Return, forループと内包, require と assert 関数型プログラミング: 代数的データ型としてのケースクラス, Option, パターンマ
Scala による小さな Lisp 2009.12.10 - 2009.12.15 (鈴) 1. 簡単な S 式パーサ 2. 文字列表現への変換 3. アトムと基本5関数だけの eval 関数 4. 条件式と関数適用を追加した eval 関数 5. 仕上げ はじめに 本稿では,小さな Lisp の実装をとおして,最初の入門の次の段階としての Scala を学んで行きます。 Java 1.5.0 上の Scala 2.7.7 を使いますが,コードは Scala 2.8.0.r20121 でもひととおり確認しています。 Lisp の仕様と評価のアルゴリズムは基本的に下記にしたがいます。 John McCarthy: A Micro-Manual for Lisp - Not the Whole Truth, ACM SIGPLAN Notices, Vol. 13, No. 8, Augus
Scalaで集合知プログラミングのまとめです PythonとScalaのお勉強を兼ねつつもゆる〜い感じで進めていきますデス 目次 1章 集合知への招待 Scalaで集合知プログラミング その1 2章 推薦を行う 嗜好データの定義 Scalaで集合知プログラミング その2 ユークリッド距離を使った類似度 Scalaで集合知プログラミング その3 ピアソン相関係数を使った類似度と類似度ランキング Scalaで集合知プログラミング その4 アイテムを推薦する Scalaで集合知プログラミング その5 アイテム間の類似を計算する - 嗜好値データの変換 - Scalaで集合知プログラミング その6 deli.cio.us APIの利用準備 Scalaで集合知プログラミング その7 deli.cio.us APIを利用した推薦 Scalaで集合知プログラミング その8 アイテムベースのフィルタリング
こんにちは、馬場です。 前回はScalaのDIのパターンとしては最も有名なCake Patternを紹介しました。今回はDIの他のパターンも紹介したいと思います。 Twitter でのScala DI さて、少し前にTwitter がScala のベストプラクティスをgithub上に公開しました。DIについては、以下のように言っていますね(かなり意訳です)。 Scala にmixinの仕組みを導入したのは、伝統的なDIの手法をやめたかったからだと思う。新方式の最たるものが「Cake pattern」だろう。 (略) けど、Scalaを利用するだけで、古典的DI手法の問題点はだいたい解決できると感じる。(略)だから、私たちはあまり継承せずに構造化しようと決めた。その方がモジュール性が高くテストしやすいプログラムができると思うから。 「伝統的なDIの手法」というのは、Springと同じよう
このエントリは Scala Advent Calendar jp 2011の12/18日です。前日はeed3si9nさんのIterator パターンの本質でした。 このエントリではScalaを始めたときにhello worldから一歩踏み出すときの言語以外の部分、環境について書きます。 Scalaを始める人は大概scalaコマンドのREPLやhello worldから始めると思うんだけど、 そこからリアルワールドに飛び出すときにギャップが大きくて挫折しやすい。 というか3回くらい挫折しました、僕は。 hello.scalaをscalaコマンドに渡して実行するだけならともかく、 小さくてもプロダクトを作ろうとしたときに途方にくれてしまう。 これはScalaに限った話ではなく、 Javaでhello worldを書いたあとにいきなりMavenに手を出すか? あるいはPythonのREPLを触っ
2010-11-06 Debasish Ghosh さん (@debasishg) の “sjson: Now offers Type Class based JSON Serialization in Scala” を翻訳しました. 元記事はこちら: http://debasishg.blogspot.com/2010/07/sjson-now-offers-type-class-based-json.html (翻訳の公開は本人より許諾済みです) 翻訳の間違い等があれば遠慮なくご指摘ください 長い間 sjson のシリアライゼーション API はリフレクションに依存するものだった.この方法の長所としては,縁の下ではリフレクションによる実装が頑張っていても API は使いやすくすることができたということだ. しかし,JSON 構造と Scala のオブジェクトでは型情報の豊かさに大きな違
ScalaでJSONを扱うためのライブラリ、sjsonについて書きます。 そもそもScalaでは標準ライブラリにJSONのパーサーがついてて、JSON文字列をパースしてcase classに入れてくれるくらいのことはしてくれます。ただし、 返り値の型が Option[List[Any] ] だったり パース結果のJSONObject(case class)をtoStringしてもJSONにならなかったり なんで標準ライブラリに存在しているのか不明ですが、JSONをバリバリアプリケーション内で使うための機能はそろってないです。(コップ本に載ってるサンプルまんまな感じです) JSON.scala in scala/tags/R_2_8_0_final/src/library/scala/util/parsing/json – Scala あとは、Javaのライブラリがいろいろあるのでそれを使っ
ScalaScalaはEmacsで書いています. ensimeやsbtは噂に聞いて入れていたのですが,所々分からない所があって使っていませんでした. まだ良く分からず,自分なりに適当に対処してしまった所もあるのですが,出来る限り使っていこうと思います. 分からない所があるたびにdoc開いてたりするのはやはり手間なので... 最初はこちらの記事が参考になります EmacsでつくるScala開発環境 前編(scala-mode) - tototoshiの日記 EmacsでつくるScala開発環境 後編(ENSIME) - tototoshiの日記 こちらの記事の順で進めて行って詰まった所なども含めて述べていこうと思います. ではでは今の自分なりの解釈(?)というか,testをEmacs上でsbtで動かすまで. sbtの事を何も知らずに,取りあえずsbt起動するようにし,scala-modeを入
前 始める sbt 2/14 ページ 次 概要 sbt プロジェクトを作るには、以下の手順をたどる: sbt をインストールして起動スクリプトを作る。 簡単な hello world プロジェクトをセットアップする。 ソースファイルの入ったプロジェクトディレクトリを作る。 ビルド定義を作る。 実行するを読んで、sbt の走らせ方を覚える。 .sbt ビルド定義を読んで、ビルド定義についてもっと詳しく習う。 sbt のインストール 二つのファイルがいる。sbt-launch.jar とそれを実行するスクリプトだ。 Unix sbt-launch.jar をダウンロードして ~/bin に置く。 以下の内容を、sbt という名前のファイルに書いて ~/bin に置けば、jar を実行するスクリプトのできあがり: java -Xmx512M -jar `dirname $0`/sbt-launc
この文章は2011年6月10日時点(Ver.1.5)の ScalaTest 公式ウェブページの和訳です。 最新の情報については、原文を参照ください。 http://www.scalatest.org/ ScalaTest は、Java プラットフォームのためのオープンソーステストフレームワークです。 数行のテストコードを書くだけで、あなたの生産性を向上させるよう設計されています。 また、このテストコードによって、あなたの意図をより明確に表現できます。 import org.scalatest.FlatSpec import org.scalatest.matchers.ShouldMatchers class StackSpec extends FlatSpec with ShouldMatchers { // 「スタック」は「後入れ先出し」方式で値をPOPする "A Stack" sho
http://twitter.github.com/scala_school/type-basics.html 以下は私の方でtypoや表示崩れを直したものです。 https://github.com/seratch/scala_school/blob/master/web/_posts/2011-05-05-lesson.textile 誤訳などありましたら、お手数ですが、ご指摘いただければ幸いです。 What are static types? Why are they useful? Benjamin C. Pierceは「型システムは、プログラムの句を計算結果の種類によって分類することで間違ったプログラムのふるまいがないことを自動的にチェックするための構文上の手法です」と言いました。 型はあなたに関数のドメインや値域を示します。数学から見慣れた例を挙げます。 f: R -> N こ
パターンマッチは便利すぎてこれを覚えてしまうと他の言語でも欲しくてたまらなくなりますね。 Scalaのパターンマッチは、実はユーザーが独自のパターンを定義することが可能になっています。 extractor(抽出子)によるパターンの拡張 簡単な例を紹介します。java.util.Date型のオブジェクトを年月日に分解してパターンマッチさせたい、とします。こんな利用イメージです。 scala> new Date match { | case DateOf( y,m,d ) => println( "%d年%02d月%02d日" format( y,m,d ) ) | case _ => | } 2010年07月09日 "case DateOf( y,m,d) => ..."の部分で、Date型を年月日に分解しているわけです。ふつーにやろうとすると、DateOfというケースクラスを作ってimpl
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く