[
next
] [
tail
] [
up
]
目次
I
Haskell 2010 言語
1
イントロダクション
1.1
プログラムの構造
1.2
Haskell カーネル
1.3
値および型
1.4
名前空間
2
字句構造
2.1
表記規約
2.2
プログラムの字句構造
2.3
コメント
2.4
識別子および演算子
2.5
数値リテラル
2.6
文字リテラルおよび文字列リテラル
2.7
レイアウト
3
式
3.1
エラー
3.2
変数,構成子,演算子,リテラル
3.3
カリー化された適用およびλ抽象
3.4
演算子の適用
3.5
セクション
3.6
条件式
3.7
リスト
3.8
タプル
3.9
ユニット式および括弧に囲まれた式
3.10
等差数列
3.11
リスト内包表記
3.12
let 式
3.13
case 式
3.14
do 式
3.15
フィールドラベル付きデータ型
3.15.1
フィールドの選択
3.15.2
フィールドラベルによる構成
3.15.3
フィールドラベルによる更新
3.16
式の型シグネチャ
3.17
パターン照合
3.17.1
パターン
3.17.2
パターン照合の非形式的意味論
3.17.3
パターン照合の形式的意味論
4
宣言と束縛
4.1
型およびクラスの概要
4.1.1
カインド
4.1.2
型の構文
4.1.3
クラス表明および文脈の構文
4.1.4
型およびクラスの意味論
4.2
ユーザ定義のデータ型
4.2.1
代数データ型宣言
4.2.2
型シノニム宣言
4.2.3
データ型名の付け替え
4.3
型クラスおよび多重定義
4.3.1
クラス宣言
4.3.2
インスタンス宣言
4.3.3
導出されたインスタンス
4.3.4
曖昧な型および多重定義された数値演算の規定値
4.4
入れ子になった宣言
4.4.1
型シグネチャ
4.4.2
結合性宣言
4.4.3
関数束縛およびパターン束縛
4.4.3.1
関数束縛
4.4.3.2
パターン束縛
4.5
関数束縛およびパターン束縛の静的意味論
4.5.1
Dependency Analysis
4.5.2
一般化
4.5.3
文脈簡約エラー
4.5.4
単相性
4.5.5
単相性制限
4.6
カインド推論
5
モジュール
5.1
モジュールの構造
5.2
エクスポートリスト
5.3
インポート宣言
5.3.1
インポートされるもの
5.3.2
修飾付きインポート
5.3.3
局所的別名
5.3.4
いくつかの例
5.4
インスタンス宣言のインポートおよびエクスポート
5.5
名前衝突および閉包性
5.5.1
修飾された名前
5.5.2
名前衝突
5.5.3
閉包性
5.6
標準プレリュード
5.6.1
Prelude
モジュール
5.6.2
プレリュード名の隠蔽
5.7
分割コンパイル
5.8
抽象データ型
6
定義済みの型およびクラス
6.1
Haskell の標準型
6.1.1
真理値
6.1.2
文字と文字列
6.1.3
リスト
6.1.4
タプル
6.1.5
ユニットデータ型
6.1.6
関数の型
6.1.7
IO 型および IOError 型
6.1.8
その他の型
6.2
正格評価
6.3
Haskell の標準クラス
6.3.1
Eq クラス
6.3.2
Ord クラス
6.3.3
Read クラスおよび Show クラス
6.3.4
Enum クラス
6.3.5
Functor クラス
6.3.6
Monad クラス
6.3.7
Bounded クラス
6.4
数値
6.4.1
数値リテラル
6.4.2
算術演算および数論的演算
6.4.3
指数および対数
6.4.4
絶対値および符号
6.4.5
三角関数
6.4.6
型変換および構成要素の取り出し
7
基本入出力
7.1
標準 I/O 関数
7.2
I/O 操作の直列化
7.3
I/O モナドにおける例外処理
8
外部関数インターフェイス
8.1
外部言語
8.2
コンテキスト
8.2.1
言語をまたぐ型の整合性
8.3
字句構造
8.4
外部宣言
8.4.1
呼び出し規約
8.4.2
外部型
8.4.3
インポート宣言
8.4.4
エクスポート宣言
8.5
外部実体の仕様
8.5.1
標準のC呼び出し
8.5.2
Win 32 API の呼び出し
8.6
マーシャリング
8.7
外部Cインターフェイス
9
標準プレリュード
9.1
プレリュード
PreludeList
9.2
プレリュード
PreludeText
9.3
プレリュード
PreludeIO
10
構文リファレンス
10.1
表記規約
10.2
字句構文
10.3
レイアウト
10.4
文藝的コメント
10.5
文脈自由構文
10.6
結合性の解決
11
導出されるインスタンスの仕様
11.1
Eq
および
Ord
クラスの導出インスタンス
11.2
Enum
クラスの導出インスタンス
11.3
Bounded
クラスの導出インスタンス
11.4
Read
および
Show
クラスの導出インスタンス
11.5
一例
12
コンパイラプラグマ
12.1
インライン展開
12.2
特殊化
12.3
言語拡張
II
Haskell 2010 ライブラリ
13
Control.Monad
13.1
Functor クラスおよび Monad クラス
13.2
関数
13.2.1
命名の慣例規則
13.2.2
基本的な
Monad
関数
13.2.3
リスト関数の一般化
13.2.4
モナド式の条件実行
13.2.5
モナドの持ち上げ演算子
14
Data.Array
14.1
不可変非正格配列
14.2
配列の構成
14.3
配列のアクセス
14.4
配列の漸次更新
14.5
導出された配列
14.6
仕様
15
Data.Bits
16
Data.Char
16.1
文字および文字列
16.2
文字の分類
16.2.1
部分範囲
16.2.2
UNICOD の一般カテゴリ
16.3
大文字小文字変換
16.4
十進表記文字
16.5
数値表現
16.6
文字列表現
17
Data.Complex
17.1
直交形式
17.2
極形式
17.3
共役
17.4
仕様
18
Data.Int
18.1
符号付き整数型
19
Data.Ix
19.1
Ix
クラス
19.2
Ix
クラスインスタンスの導出
20
Data.List
20.1
基本関数
20.2
リストの変換
20.3
リストの簡約(畳み込み)
20.3.1
特殊化した畳み込み
20.4
リストの構築
20.4.1
スキャン
20.4.2
蓄積写像
20.4.3
無限リスト
20.4.4
展開
20.5
部分リスト
20.5.1
部分リストの取り出し
20.5.2
述語
20.6
リストの検索
20.6.1
等価性による検索
20.6.2
述語を使う検索
20.7
リストのインデックス付け
20.8
リストの結合と分解
20.9
特殊なリスト
20.9.1
文字列上の関数
20.9.2
「集合」演算
20.9.3
順序リスト
20.10
一般化された関数
20.10.1
「
By
」演算
20.10.1.1
ユーザが等価性を提供する(
Eq
文脈と置き換える)
20.10.1.2
ユーザが比較を提供する(
Ord
文脈と置き換える)
20.10.2
「
generic
」演算
21
Data.Maybe
21.1
Maybe
型と演算
21.2
仕様
22
Data.Ratio
22.1
仕様
23
Data.Word
23.1
符号なし整数型
24
Foreign
25
Foreign.C
26
Foreign.C.Error
26.1
errno
値のHaskellにおける表現
26.1.1
よく使われる
errno
記号
26.1.2
Errno
関数
26.1.3
失敗する可能性のある入出力操作に対応するガード
27
Foreign.C.String
27.1
C文字列
27.1.1
ロケール依存エンコーディングの使用
27.1.2
8-bit 文字の使用
27.2
Cワイド文字列
28
Foreign.C.Types
28.1
Cの型の表現
28.1.1
整数型
28.1.2
数値型
28.1.3
浮動小数点数型
28.1.4
その他の型
29
Foreign.ForeignPtr
29.1
ファイナライズされるデータポインタ
29.1.1
基本演算
29.1.2
低水準演算
29.1.3
管理されたメモリのアロケーション
30
Foreign.Marshal
31
Foreign.Marshal.Alloc
31.1
メモリアロケーション
31.1.1
局所的なアロケーション
31.1.2
動的なアロケーション
32
Foreign.Marshal.Array
32.1
配列のマーシャリング
32.1.1
アロケーション
32.1.2
マーシャリング
32.1.3
アロケーションとマーシャリングの組み合わせ
32.1.4
コピー
32.1.5
長さの計算
32.1.6
インデックス付け
33
Foreign.Marshal.Error
34
Foreign.Marshal.Utils
34.1
一般的なマーシャリングユーティリティ
34.1.1
アロケーションとマーシャリングの組み合わせ
34.1.2
真理値のマーシャリング(非ゼロが
True
に対応)
34.1.3
Maybe 値のマーシャリング
34.1.4
格納可能オブジェクトのリストのマーシャリング
34.1.5
memcpy および memmove に対する Haskell 流のインターフェイス
35
Foreign.Ptr
35.1
データポインタ
35.2
関数ポインタ
35.3
情報落ちのない整数とポインタの間の変換
36
Foreign.StablePtr
36.1
Haskellの値への不変ポインタ
36.1.1
C側のインターフェイス
37
Foreign.Storable
38
Numeric
38.1
表示
38.2
読み込み
38.3
その他
39
System.Environment
40
System.Exit
41
System.IO
41.1
IO モナド
41.2
ファイルとハンドル
41.2.1
標準ハンドル
41.3
ファイルのオープンおよびクローズ
41.3.1
ファイルのオープン
41.3.2
ファイルのクローズ
41.3.3
特殊な場合
41.3.4
ファイルのロック
41.4
ハンドルの操作
41.4.1
ファイルサイズの決定および変更
41.4.2
入力終端の検出
41.4.3
バッファリング操作
41.4.4
ハンドルの位置変更
41.4.5
ハンドルの性質
41.4.6
端末操作
41.4.7
ハンドル状態の表示
41.5
テキストの入出力
41.5.1
テキスト入力
41.5.2
テキスト出力
41.5.3
標準入力および標準出力の特殊な場合
42
System.IO.Error
42.1
I/O エラー
42.1.1
I/O の分類
42.1.2
I/O エラーの属性
42.2
I/O エラーの型
42.3
I/O エラーの投出と捕捉
[
next
] [
front
] [
up
]