<?xml version="1.0" encoding="UTF-8" ?><rdf:RDF 
  xmlns="http://purl.org/rss/1.0/"
  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns:atom="http://www.w3.org/2005/Atom"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xml:lang="ja">
  <channel rdf:about="http://w.atwiki.jp/mnru/">
    <title>mnru @ ウィキ</title>
    <link>http://w.atwiki.jp/mnru/</link>
    <atom:link href="https://w.atwiki.jp/mnru/rss10.xml" rel="self" type="application/rss+xml" />
    <atom:link rel="hub" href="https://pubsubhubbub.appspot.com" />
    <description>mnru @ ウィキ</description>

    <dc:language>ja</dc:language>
    <dc:date>2011-01-25T19:10:13+09:00</dc:date>
    <utime>1295950213</utime>

    <items>
      <rdf:Seq>
                <rdf:li rdf:resource="https://w.atwiki.jp/mnru/pages/31.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/mnru/pages/1.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/mnru/pages/32.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/mnru/pages/30.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/mnru/pages/29.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/mnru/pages/28.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/mnru/pages/27.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/mnru/pages/26.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/mnru/pages/25.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/mnru/pages/24.html" />
              </rdf:Seq>
    </items>
	
		
    
  </channel>
    <item rdf:about="https://w.atwiki.jp/mnru/pages/31.html">
    <title>勝手に「プログラミングscala」全編２．８対応化</title>
    <link>https://w.atwiki.jp/mnru/pages/31.html</link>
    <description>
      ****最近オライリージャパンから出版された「プログラミング scala」は入門書的な要素とリファレンス的な要素のバランスの取ていて、scala本を一冊だけ買うならこの本がいいと思います。ですが基本的にはscalaのver2.7について書かれており、ver2.8のしっかりとした解説を含むにもかかわらず、ver2.8を使いながら読むと混乱するように思います。
****そこで、この本でver2.8と食い違う部分を各章ごとに注釈的に挙げていくwikiを立ち上げてみました。    </description>
    <dc:date>2011-01-25T19:10:13+09:00</dc:date>
    <utime>1295950213</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/mnru/pages/1.html">
    <title>トップページ</title>
    <link>https://w.atwiki.jp/mnru/pages/1.html</link>
    <description>
      [[勝手に「プログラミングscala」全編２．８対応化]]    </description>
    <dc:date>2011-01-25T01:22:21+09:00</dc:date>
    <utime>1295886141</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/mnru/pages/32.html">
    <title>「プログラミング scala」　の目次</title>
    <link>https://w.atwiki.jp/mnru/pages/32.html</link>
    <description>
      [[1章　イントロダクション ──時速 0マイルから 60マイルまで]]

   1.1　なぜ Scalaを使うのか
       1.1.1　もしあなたが Javaプログラマなら
       1.1.2　もしあなたが Ruby、Pythonなどのプログラマなら
       1.1.3　Scalaの紹介
       1.1.4　Scalaの誘惑
   1.2　Scalaのインストール
   1.3　より詳細な情報
   1.4　Scalaの味見
   1.5　並行処理の味見
   1.6　まとめ


[[2章　 Scala言語の利点 ──少ないタイプで多くのことを]]

   2.1　はじめに
   2.2　セミコロン
   2.3　変数宣言
   2.4　メソッド宣言
       2.4.1　メソッドのデフォルト引数と名前付き引数（ Scala 2.8）
       2.4.2　入れ子のメソッド定義
   2.5　型情報の推論
   2.6　リテラル
       2.6.1　整数リテラル
       2.6.2　浮動小数点リテラル
       2.6.3　ブールリテラル
       2.6.4　文字リテラル
       2.6.5　文字列リテラル
       2.6.6　シンボルリテラル
   2.7　タプル
   2.8　Option、Some、None：nullの回避
   2.9　ファイルと名前空間によるコード構成
   2.10　型やメンバのインポート
       2.10.1　インポートは相対的
   2.11　抽象型とパラメータ化された型
   2.12　予約語
   2.13　まとめ


[[3章　 Scalaプログラミングの基礎 ──基本文法の総点検]]

   3.1　演算子は演算子か
       3.1.1　糖衣構文
   3.2　丸括弧やドットのないメソッド
       3.2.1　優先順位
   3.3　ドメイン固有言語
   3.4　Scalaのif文
   3.5　Scalaのfor内包表記
       3.5.1　犬でもわかる犬の例
       3.5.2　フィルタリング
       3.5.3　yield
       3.5.4　スコープの拡大
   3.6　その他のループ構文
       3.6.1　Scalaのwhileループ
       3.6.2　Scalaのdo-whileループ
       3.6.3　ジェネレータ式
   3.7　条件演算子
   3.8　パターンマッチ
       3.8.1　シンプルなマッチ
       3.8.2　マッチ式の中の変数
       3.8.3　型に対するマッチ
       3.8.4　シーケンスに対するマッチ
       3.8.5　タプル（およびガード）に対するマッチ
       3.8.6　ケースクラスに対するマッチ
       3.8.7　正規表現に対するマッチ
       3.8.8　case節内における入れ子の変数の束縛
       3.8.9　tr y-catch-finally節の使用
       3.8.10　パターンマッチのまとめ
   3.9　列挙
   3.10　まとめ


[[4章　トレイト]]

   4.1　トレイトの基礎
       4.1.1　ミックスインとしてのトレイト
   4.2　積み重ね可能なトレイト
   4.3　トレイトの生成
       4.3.1　クラスかトレイトか
   4.4　まとめ


[[5章　 Scalaによる初級オブジェクト指向プログラミング]]

   5.1　クラスとオブジェクトの基礎
   5.2　親クラス
   5.3　コンストラクタ
       5.3.1　親クラスのコンストラクタ呼び出し
   5.4　入れ子のクラス
   5.5　可視性のルール
       5.5.1　公開可視性
       5.5.2　限定公開可視性
       5.5.3　非公開可視性
       5.5.4　スコープ指定非公開可視性とスコープ指定限定公開可視性
       5.5.5　可視性についての最終的な考察
   5.6　まとめ


[[6章　 Scalaによる上級オブジェクト指向プログラミング]]

   6.1　クラスとトレイトのメンバをオーバーライドする
       6.1.1　final宣言をオーバーライドしようとした場合
       6.1.2　抽象／具象メソッドのオーバーライド
       6.1.3　抽象／具象フィールドのオーバーライド
       6.1.4　トレイトの抽象／具象フィールドのオーバーライド
       6.1.5　クラス内の抽象／具象フィールドのオーバーライド
       6.1.6　抽象型のオーバーライド
       6.1.7　アクセサメソッドとフィールドの区別がないとき：統一形式アクセスの原則
   6.2　コンパニオンオブジェクト
       6.2.1　apply
       6.2.2　unapply
       6.2.3　コレクションのための applyとunapplySeq
       6.2.4　コンパニオンオブジェクトと Javaの静的メソッド
   6.3　ケースクラス
       6.3.1　二項演算子用の糖衣構文
       6.3.2　Sclala2.8における copyメソッド
       6.3.3　ケースクラスの継承
   6.4　オブジェクトの等価性
       6.4.1　equalsメソッド
       6.4.2　==メソッドと !=メソッド
       6.4.3　neメソッドと eqメソッド
       6.4.4　Arrayの等価性と sameElementsメソッド
   6.5　まとめ


[[7章　Scalaオブジェクトシステム]]

   7.1　Predefオブジェクト
   7.2　クラスとオブジェクト： staticはどこにあるか ?
       7.2.1　パッケージオブジェクト
   7.3　シールされたクラス階層
   7.4　Scalaの型階層
   7.5　オブジェクト階層の線形化
   7.6　まとめ


[[8章　Scalaによる関数型プログラミング]]

   8.1　関数型プログラミングとは何か？
       8.1.1　数学における関数
       8.1.2　変わらない変数
   8.2　Scalaによる関数型プログラミング
       8.2.1　関数リテラルとクロージャ
       8.2.2　純粋さの内と外
   8.3　再帰
   8.4　末尾呼び出しと末尾呼び出しの最適化
       8.4.1　末尾呼び出しのトランポリン
   8.5　関数型データ構造
       8.5.1　関数型プログラミングにおけるリスト
       8.5.2　関数型プログラミングにおけるマップ
       8.5.3　関数型プログラミングにおける集合
       8.5.4　関数型プログラミングにおけるその他のデータ構造
   8.6　走査、マッピング、フィルタリング、畳み込み、簡約
       8.6.1　走査
       8.6.2　マッピング
       8.6.3　フィルタリング
       8.6.4　畳み込みと簡約
       8.6.5　関数型の Option
   8.7　パターンマッチ
   8.8　部分適用された関数と部分関数
   8.9　カリー化
   8.10　暗黙の型変換とパラメータ
       8.10.1　暗黙の型変換
       8.10.2　暗黙の関数パラメータ
       8.10.3　暗黙の型変換とパラメータに関する最後の考察
   8.11　名前渡し、値渡し
   8.12　遅延評価値
   8.13　まとめ


[[9章　アクターによる堅牢でスケーラブルな並行処理]]

   9.1　状態に関する共有と同期の問題
   9.2　アクターとは
       9.2.1　概念としてのアクター
   9.3　Scalaにおけるアクター
       9.3.1　アクターへのメッセージ送信
       9.3.2　メールボックス
       9.3.3　アクターの詳細
       9.3.4　アクターの実践的な使い方
   9.4　Scalaにおける従来型の並行処理：スレッドとイベント
       9.4.1　その場限りのスレッド
       9.4.2　java.util.concurrentの利用
       9.4.3　イベント
   9.5　まとめ


[[10章　 XMLとの連係]]

   10.1　XMLを読む
       10.1.1　XMLを探索する
       10.1.2　XMLのループとマッチ
   10.2　XMLを書く
       10.2.1　現実世界の例
   10.3　まとめ


[[11章　ドメイン固有言語]]

   11.1　内部 DSL
       11.1.1　給与計算の内部 DSL
       11.1.2　中置演算子記法
       11.1.3　暗黙の型変換とユーザー定義型
       11.1.4　applyメソッド
       11.1.5　給与計算ルール DSLの実装
       11.1.6　内部 DSLのまとめ
   11.2　外部 DSLとパーサコンビネータ
       11.2.1　パーサコンビネータとは
       11.2.2　給与計算の外部 DSL
       11.2.3　外部 DSL文法の Scalaによる実装
       11.2.4　外部 DSLによる給与小切手の生成
       11.2.5　内部 DSL対外部 DSL
   11.3　まとめ


[[12章　 Scalaの型システム]]

   12.1　型におけるリフレクション
   12.2　パラメータ化された型を理解する
       12.2.1　マニフェスト
       12.2.2　パラメータ化されたメソッド
   12.3　継承における変位指定
       12.3.1　可変な型の変位指定
       12.3.2　「Scalaの変位指定」対「 Javaの変位指定」
       12.3.3　実装についての注意
   12.4　型境界
       12.4.1　上限型境界
       12.4.2　下限型境界
       12.4.3　Listに関する深い考察
       12.4.4　ビューと可視境界
   12.5　NothingとNull
   12.6　抽象型を理解する
       12.6.1　パラメータ化された型か抽象型か
   12.7　パス依存型
       12.7.1　C.this
       12.7.2　C.super
       12.7.3　path.x
   12.8　値型
       12.8.1　型指定子
       12.8.2　タプル
       12.8.3　パラメータ化された型
       12.8.4　アノテーション付きの型
       12.8.5　複合型
       12.8.6　中置型
       12.8.7　関数型
       12.8.8　型射影
       12.8.9　シングルトン型
   12.9　自分型アノテーション
   12.10　構造型
   12.11　存在型
   12.12　無限データ構造と遅延評価
   12.13　まとめ


[[13章　アプリケーションの設計]]

   13.1　アノテーション（注釈）
   13.2　列挙対パターンマッチ
   13.3　アノテーションと列挙についての考察
       13.3.1　列挙対ケースクラスとパターンマッチ
   13.4　null対Option
       13.4.1　Optionとfor内包表記
   13.5　例外とその代替手段
   13.6　スケーラブルな抽象
       13.6.1　細粒度の可視性ルール
       13.6.2　ミックスイン合成
       13.6.3　自分型アノテーションと抽象型メンバ
   13.7　実践的なトレイトの設計
   13.8　デザインパターン
       13.8.1　Visitorパターン：より良い代替手段
       13.8.2　Scalaにおける依存性の注入： Cakeパターン
   13.9　契約による設計を使ったより良い設計
   13.10　まとめ


[[14章　 Scalaのツール、ライブラリ、IDEサポート]]

   14.1　コマンドラインツール
       14.1.1　scalacコマンドラインツール
       14.1.2　scalaコマンドラインツール
       14.1.3　scalap、javap、jadコマンドラインツール
       14.1.4　scaladocコマンドラインツール
       14.1.5　sbazコマンドラインツール
       14.1.6　fscコマンドラインツール
   14.2　ビルドツール
   14.3　IDEとの統合
       14.3.1　Eclipse
       14.3.2　IntelliJ
       14.3.3　NetBeans
       14.3.4　テキストエディタ
   14.4　Scalaでのテスト駆動開発
       14.4.1　ScalaTest
       14.4.2　Specs
       14.4.3　ScalaCheck
   14.5　その他の注目すべき Scalaのライブラリとツール
       14.5.1　Lift
       14.5.2　Scalaz
       14.5.3　Scalax
       14.5.4　MetaScala
       14.5.5　JRebel（旧 JavaRebel）
       14.5.6　その他雑多なライブラリ
   14.6　Javaとの相互運用性
       14.6.1　JavaとScalaのジェネリクス
       14.6.2　Javaでの Scalaの関数の使用
       14.6.3　JavaBeansプロパティ
       14.6.4　AnyVal型と Javaのプリミティブ型
       14.6.5　Javaコードでの Scalaの名前
   14.7　Javaライブラリとの相互運用性
       14.7.1　AspectJ
       14.7.2　Spring Framework
       14.7.3　Terracotta
       14.7.4　Hadoop
   14.8　まとめ


[[15章　 SimpleBuildToolを使った Scalaの開発]]

   15.1　Simple Build Tool
       15.1.1　プロジェクト環境の構築
       15.1.2　対話型シェル
   15.2　プログラムの作成
       15.2.1　プログラムの仕様
       15.2.2　プロジェクト環境構築
       15.2.3　依存ライブラリの設定とダウンロード
       15.2.4　機能を分析する
       15.2.5　一定期間で処理を実行するタイマー機能
       15.2.6　XMLからデータを抽出する機能
       15.2.7　HTTPによるフェッチ機能
       15.2.8　全体をつなぐ
   15.3　アプリケーションとして組み立てる
   15.4　機能拡張
       15.4.1　Entryの処理を拡張可能にする
       15.4.2　動的にプラグインを変更する
   15.5　まとめ


[[16章　Scala2.8の新機能と移行のポイント、日本語環境、サンプルコード]]

   16.1　Scala 2.8の新機能
       16.1.1　scala.collection.jclの廃止と scala.collection.JavaConversionsの導入
       16.1.2　新しい配列の実装とポリモーフィックな配列に対するマニフェストの導入
       16.1.3　型の特殊化
       16.1.4　XMLの等価性の変更
       16.1.5　アノテーションの改善
       16.1.6　トランポリン
       16.1.7　breakのサポート
   16.2　バージョン 2.7から 2.8への移行ポイント
       16.2.1　Predef.formatメソッドの実装変更
       16.2.2　プリミティブ型の別名
       16.2.3　パッケージ参照ルールの変更
       16.2.4　else節省略時の if文の返り値の変更
       16.2.5　Enumeration APIの変更
       16.2.6　コレクション APIの戻り値の型の改善
       16.2.7　RichStringの廃止
       16.2.8　抽象ケースクラスの継承
       16.2.9　XMLの等価性の変更
       16.2.10　アノテーション
       16.2.11　ライブラリ
   16.3　Scalaの日本語環境
       16.3.1　ソースコードエンコーディング
       16.3.2　Scala対話環境
       16.3.3　ファイルの日本語の入出力
   16.4　サンプルコード    </description>
    <dc:date>2011-01-24T23:36:48+09:00</dc:date>
    <utime>1295879808</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/mnru/pages/30.html">
    <title>プログラミング scala　の目次</title>
    <link>https://w.atwiki.jp/mnru/pages/30.html</link>
    <description>
      [[1章　イントロダクション ──時速 0マイルから 60マイルまで]]

   1.1　なぜ Scalaを使うのか
       1.1.1　もしあなたが Javaプログラマなら
       1.1.2　もしあなたが Ruby、Pythonなどのプログラマなら
       1.1.3　Scalaの紹介
       1.1.4　Scalaの誘惑
   1.2　Scalaのインストール
   1.3　より詳細な情報
   1.4　Scalaの味見
   1.5　並行処理の味見
   1.6　まとめ


[[2章　 Scala言語の利点 ──少ないタイプで多くのことを]]

   2.1　はじめに
   2.2　セミコロン
   2.3　変数宣言
   2.4　メソッド宣言
       2.4.1　メソッドのデフォルト引数と名前付き引数（ Scala 2.8）
       2.4.2　入れ子のメソッド定義
   2.5　型情報の推論
   2.6　リテラル
       2.6.1　整数リテラル
       2.6.2　浮動小数点リテラル
       2.6.3　ブールリテラル
       2.6.4　文字リテラル
       2.6.5　文字列リテラル
       2.6.6　シンボルリテラル
   2.7　タプル
   2.8　Option、Some、None：nullの回避
   2.9　ファイルと名前空間によるコード構成
   2.10　型やメンバのインポート
       2.10.1　インポートは相対的
   2.11　抽象型とパラメータ化された型
   2.12　予約語
   2.13　まとめ


[[3章　 Scalaプログラミングの基礎 ──基本文法の総点検]]

   3.1　演算子は演算子か
       3.1.1　糖衣構文
   3.2　丸括弧やドットのないメソッド
       3.2.1　優先順位
   3.3　ドメイン固有言語
   3.4　Scalaのif文
   3.5　Scalaのfor内包表記
       3.5.1　犬でもわかる犬の例
       3.5.2　フィルタリング
       3.5.3　yield
       3.5.4　スコープの拡大
   3.6　その他のループ構文
       3.6.1　Scalaのwhileループ
       3.6.2　Scalaのdo-whileループ
       3.6.3　ジェネレータ式
   3.7　条件演算子
   3.8　パターンマッチ
       3.8.1　シンプルなマッチ
       3.8.2　マッチ式の中の変数
       3.8.3　型に対するマッチ
       3.8.4　シーケンスに対するマッチ
       3.8.5　タプル（およびガード）に対するマッチ
       3.8.6　ケースクラスに対するマッチ
       3.8.7　正規表現に対するマッチ
       3.8.8　case節内における入れ子の変数の束縛
       3.8.9　tr y-catch-finally節の使用
       3.8.10　パターンマッチのまとめ
   3.9　列挙
   3.10　まとめ


[[4章　トレイト]]

   4.1　トレイトの基礎
       4.1.1　ミックスインとしてのトレイト
   4.2　積み重ね可能なトレイト
   4.3　トレイトの生成
       4.3.1　クラスかトレイトか
   4.4　まとめ


[[5章　 Scalaによる初級オブジェクト指向プログラミング]]

   5.1　クラスとオブジェクトの基礎
   5.2　親クラス
   5.3　コンストラクタ
       5.3.1　親クラスのコンストラクタ呼び出し
   5.4　入れ子のクラス
   5.5　可視性のルール
       5.5.1　公開可視性
       5.5.2　限定公開可視性
       5.5.3　非公開可視性
       5.5.4　スコープ指定非公開可視性とスコープ指定限定公開可視性
       5.5.5　可視性についての最終的な考察
   5.6　まとめ


[[6章　 Scalaによる上級オブジェクト指向プログラミング]]

   6.1　クラスとトレイトのメンバをオーバーライドする
       6.1.1　final宣言をオーバーライドしようとした場合
       6.1.2　抽象／具象メソッドのオーバーライド
       6.1.3　抽象／具象フィールドのオーバーライド
       6.1.4　トレイトの抽象／具象フィールドのオーバーライド
       6.1.5　クラス内の抽象／具象フィールドのオーバーライド
       6.1.6　抽象型のオーバーライド
       6.1.7　アクセサメソッドとフィールドの区別がないとき：統一形式アクセスの原則
   6.2　コンパニオンオブジェクト
       6.2.1　apply
       6.2.2　unapply
       6.2.3　コレクションのための applyとunapplySeq
       6.2.4　コンパニオンオブジェクトと Javaの静的メソッド
   6.3　ケースクラス
       6.3.1　二項演算子用の糖衣構文
       6.3.2　Sclala2.8における copyメソッド
       6.3.3　ケースクラスの継承
   6.4　オブジェクトの等価性
       6.4.1　equalsメソッド
       6.4.2　==メソッドと !=メソッド
       6.4.3　neメソッドと eqメソッド
       6.4.4　Arrayの等価性と sameElementsメソッド
   6.5　まとめ


[[7章　Scalaオブジェクトシステム]]

   7.1　Predefオブジェクト
   7.2　クラスとオブジェクト： staticはどこにあるか ?
       7.2.1　パッケージオブジェクト
   7.3　シールされたクラス階層
   7.4　Scalaの型階層
   7.5　オブジェクト階層の線形化
   7.6　まとめ


[[8章　Scalaによる関数型プログラミング]]

   8.1　関数型プログラミングとは何か？
       8.1.1　数学における関数
       8.1.2　変わらない変数
   8.2　Scalaによる関数型プログラミング
       8.2.1　関数リテラルとクロージャ
       8.2.2　純粋さの内と外
   8.3　再帰
   8.4　末尾呼び出しと末尾呼び出しの最適化
       8.4.1　末尾呼び出しのトランポリン
   8.5　関数型データ構造
       8.5.1　関数型プログラミングにおけるリスト
       8.5.2　関数型プログラミングにおけるマップ
       8.5.3　関数型プログラミングにおける集合
       8.5.4　関数型プログラミングにおけるその他のデータ構造
   8.6　走査、マッピング、フィルタリング、畳み込み、簡約
       8.6.1　走査
       8.6.2　マッピング
       8.6.3　フィルタリング
       8.6.4　畳み込みと簡約
       8.6.5　関数型の Option
   8.7　パターンマッチ
   8.8　部分適用された関数と部分関数
   8.9　カリー化
   8.10　暗黙の型変換とパラメータ
       8.10.1　暗黙の型変換
       8.10.2　暗黙の関数パラメータ
       8.10.3　暗黙の型変換とパラメータに関する最後の考察
   8.11　名前渡し、値渡し
   8.12　遅延評価値
   8.13　まとめ


[[9章　アクターによる堅牢でスケーラブルな並行処理]]

   9.1　状態に関する共有と同期の問題
   9.2　アクターとは
       9.2.1　概念としてのアクター
   9.3　Scalaにおけるアクター
       9.3.1　アクターへのメッセージ送信
       9.3.2　メールボックス
       9.3.3　アクターの詳細
       9.3.4　アクターの実践的な使い方
   9.4　Scalaにおける従来型の並行処理：スレッドとイベント
       9.4.1　その場限りのスレッド
       9.4.2　java.util.concurrentの利用
       9.4.3　イベント
   9.5　まとめ


[[10章　 XMLとの連係]]

   10.1　XMLを読む
       10.1.1　XMLを探索する
       10.1.2　XMLのループとマッチ
   10.2　XMLを書く
       10.2.1　現実世界の例
   10.3　まとめ


[[11章　ドメイン固有言語]]

   11.1　内部 DSL
       11.1.1　給与計算の内部 DSL
       11.1.2　中置演算子記法
       11.1.3　暗黙の型変換とユーザー定義型
       11.1.4　applyメソッド
       11.1.5　給与計算ルール DSLの実装
       11.1.6　内部 DSLのまとめ
   11.2　外部 DSLとパーサコンビネータ
       11.2.1　パーサコンビネータとは
       11.2.2　給与計算の外部 DSL
       11.2.3　外部 DSL文法の Scalaによる実装
       11.2.4　外部 DSLによる給与小切手の生成
       11.2.5　内部 DSL対外部 DSL
   11.3　まとめ


[[12章　 Scalaの型システム]]

   12.1　型におけるリフレクション
   12.2　パラメータ化された型を理解する
       12.2.1　マニフェスト
       12.2.2　パラメータ化されたメソッド
   12.3　継承における変位指定
       12.3.1　可変な型の変位指定
       12.3.2　「Scalaの変位指定」対「 Javaの変位指定」
       12.3.3　実装についての注意
   12.4　型境界
       12.4.1　上限型境界
       12.4.2　下限型境界
       12.4.3　Listに関する深い考察
       12.4.4　ビューと可視境界
   12.5　NothingとNull
   12.6　抽象型を理解する
       12.6.1　パラメータ化された型か抽象型か
   12.7　パス依存型
       12.7.1　C.this
       12.7.2　C.super
       12.7.3　path.x
   12.8　値型
       12.8.1　型指定子
       12.8.2　タプル
       12.8.3　パラメータ化された型
       12.8.4　アノテーション付きの型
       12.8.5　複合型
       12.8.6　中置型
       12.8.7　関数型
       12.8.8　型射影
       12.8.9　シングルトン型
   12.9　自分型アノテーション
   12.10　構造型
   12.11　存在型
   12.12　無限データ構造と遅延評価
   12.13　まとめ


[[13章　アプリケーションの設計]]

   13.1　アノテーション（注釈）
   13.2　列挙対パターンマッチ
   13.3　アノテーションと列挙についての考察
       13.3.1　列挙対ケースクラスとパターンマッチ
   13.4　null対Option
       13.4.1　Optionとfor内包表記
   13.5　例外とその代替手段
   13.6　スケーラブルな抽象
       13.6.1　細粒度の可視性ルール
       13.6.2　ミックスイン合成
       13.6.3　自分型アノテーションと抽象型メンバ
   13.7　実践的なトレイトの設計
   13.8　デザインパターン
       13.8.1　Visitorパターン：より良い代替手段
       13.8.2　Scalaにおける依存性の注入： Cakeパターン
   13.9　契約による設計を使ったより良い設計
   13.10　まとめ


[[14章　 Scalaのツール、ライブラリ、IDEサポート]]

   14.1　コマンドラインツール
       14.1.1　scalacコマンドラインツール
       14.1.2　scalaコマンドラインツール
       14.1.3　scalap、javap、jadコマンドラインツール
       14.1.4　scaladocコマンドラインツール
       14.1.5　sbazコマンドラインツール
       14.1.6　fscコマンドラインツール
   14.2　ビルドツール
   14.3　IDEとの統合
       14.3.1　Eclipse
       14.3.2　IntelliJ
       14.3.3　NetBeans
       14.3.4　テキストエディタ
   14.4　Scalaでのテスト駆動開発
       14.4.1　ScalaTest
       14.4.2　Specs
       14.4.3　ScalaCheck
   14.5　その他の注目すべき Scalaのライブラリとツール
       14.5.1　Lift
       14.5.2　Scalaz
       14.5.3　Scalax
       14.5.4　MetaScala
       14.5.5　JRebel（旧 JavaRebel）
       14.5.6　その他雑多なライブラリ
   14.6　Javaとの相互運用性
       14.6.1　JavaとScalaのジェネリクス
       14.6.2　Javaでの Scalaの関数の使用
       14.6.3　JavaBeansプロパティ
       14.6.4　AnyVal型と Javaのプリミティブ型
       14.6.5　Javaコードでの Scalaの名前
   14.7　Javaライブラリとの相互運用性
       14.7.1　AspectJ
       14.7.2　Spring Framework
       14.7.3　Terracotta
       14.7.4　Hadoop
   14.8　まとめ


[[15章　 SimpleBuildToolを使った Scalaの開発]]

   15.1　Simple Build Tool
       15.1.1　プロジェクト環境の構築
       15.1.2　対話型シェル
   15.2　プログラムの作成
       15.2.1　プログラムの仕様
       15.2.2　プロジェクト環境構築
       15.2.3　依存ライブラリの設定とダウンロード
       15.2.4　機能を分析する
       15.2.5　一定期間で処理を実行するタイマー機能
       15.2.6　XMLからデータを抽出する機能
       15.2.7　HTTPによるフェッチ機能
       15.2.8　全体をつなぐ
   15.3　アプリケーションとして組み立てる
   15.4　機能拡張
       15.4.1　Entryの処理を拡張可能にする
       15.4.2　動的にプラグインを変更する
   15.5　まとめ


[[16章　Scala2.8の新機能と移行のポイント、日本語環境、サンプルコード]]

   16.1　Scala 2.8の新機能
       16.1.1　scala.collection.jclの廃止と scala.collection.JavaConversionsの導入
       16.1.2　新しい配列の実装とポリモーフィックな配列に対するマニフェストの導入
       16.1.3　型の特殊化
       16.1.4　XMLの等価性の変更
       16.1.5　アノテーションの改善
       16.1.6　トランポリン
       16.1.7　breakのサポート
   16.2　バージョン 2.7から 2.8への移行ポイント
       16.2.1　Predef.formatメソッドの実装変更
       16.2.2　プリミティブ型の別名
       16.2.3　パッケージ参照ルールの変更
       16.2.4　else節省略時の if文の返り値の変更
       16.2.5　Enumeration APIの変更
       16.2.6　コレクション APIの戻り値の型の改善
       16.2.7　RichStringの廃止
       16.2.8　抽象ケースクラスの継承
       16.2.9　XMLの等価性の変更
       16.2.10　アノテーション
       16.2.11　ライブラリ
   16.3　Scalaの日本語環境
       16.3.1　ソースコードエンコーディング
       16.3.2　Scala対話環境
       16.3.3　ファイルの日本語の入出力
   16.4　サンプルコード    </description>
    <dc:date>2011-01-24T23:29:36+09:00</dc:date>
    <utime>1295879376</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/mnru/pages/29.html">
    <title>16章　Scala2.8の新機能と移行のポイント、日本語環境、サンプルコード</title>
    <link>https://w.atwiki.jp/mnru/pages/29.html</link>
    <description>
      *    </description>
    <dc:date>2011-01-24T23:26:14+09:00</dc:date>
    <utime>1295879174</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/mnru/pages/28.html">
    <title>15章　 SimpleBuildToolを使った Scalaの開発</title>
    <link>https://w.atwiki.jp/mnru/pages/28.html</link>
    <description>
      *    </description>
    <dc:date>2011-01-24T23:25:59+09:00</dc:date>
    <utime>1295879159</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/mnru/pages/27.html">
    <title>14章　 Scalaのツール、ライブラリ、IDEサポート</title>
    <link>https://w.atwiki.jp/mnru/pages/27.html</link>
    <description>
      *    </description>
    <dc:date>2011-01-24T23:25:48+09:00</dc:date>
    <utime>1295879148</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/mnru/pages/26.html">
    <title>13章　アプリケーションの設計</title>
    <link>https://w.atwiki.jp/mnru/pages/26.html</link>
    <description>
      *    </description>
    <dc:date>2011-01-24T23:25:38+09:00</dc:date>
    <utime>1295879138</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/mnru/pages/25.html">
    <title>12章　 Scalaの型システム</title>
    <link>https://w.atwiki.jp/mnru/pages/25.html</link>
    <description>
      *    </description>
    <dc:date>2011-01-24T23:25:17+09:00</dc:date>
    <utime>1295879117</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/mnru/pages/24.html">
    <title>11章　ドメイン固有言語</title>
    <link>https://w.atwiki.jp/mnru/pages/24.html</link>
    <description>
      *    </description>
    <dc:date>2011-01-24T23:25:09+09:00</dc:date>
    <utime>1295879109</utime>
  </item>
  </rdf:RDF>
