ANSI Common Lispで標準化された範囲を対象に、各章のポイントと主要な関数・マクロなどを紹介します。

  1. イントロダクション
    • Common Lispの歴史
    • 仕様に含まれる非推奨機能
  2. 構文
    • 特殊文字
    • S式、コメント、quote
    • リーダーマクロ
  3. 評価とコンパイル
    • シンボルと評価戦略
    • lambdaとクロージャ
    • 多値
    • 構造化代入
    • オプショナル引数、可変長引数、キーワード引数
    • コンパイル
    • 宣言とディスアセンブル
  4. 型とクラス
    • 型の調査、判定、変換
    • 型の定義と型指定子
    • ビルトインクラスと独自のクラス定義、スロット
    • クラスの継承
  5. データと制御フロー
    • 変数、定数
    • 関数
    • マクロ
    • 束縛・変更
    • 汎変数
    • 関数の適用
    • 条件分岐
    • 特殊制御(ブロック・ジャンプ・キャッチ)
  6. 繰り返し
    • dotimes, dolist
    • do
    • loop
  7. オブジェクト (CLOS)
    • 多重継承
    • コンストラクタ
    • 多重ディスパッチ
    • メソッド結合
    • クラスの動的変更
    • オブジェクトの表示
  8. 構造体
    • 定義・生成
    • スロットアクセス
    • 判定・コピー
  9. コンディション
    • デバッガ
    • 例外の捕捉
    • コンディションとスロット
    • 例外からの回復
    • 例外の通知
    • 回復方法の確立
    • コンディションの定義
  10. シンボル
    • シンボルのセル
    • シンボルと属性リスト
    • gensymとマクロ
  11. パッケージ
    • パッケージのスロット
    • 標準パッケージ
    • パッケージの継承
    • パッケージの生成と移動
    • シンボルのアクセス制限と公開
    • 名前の衝突と回避(シャドウ)
    • defpackage
    • 数の表記
    • 数の比較と判定
    • 最大、最小
    • 偶数、奇数
    • 最大公約数、最小公倍数
    • 四則演算
    • インクリメント、デクリメント
    • 絶対値
    • 商と剰余
    • 四捨五入
    • 三角関数
    • 指数関数・対数関数
    • 乱数
    • ビット演算とフラグ
    • シフト演算
    • バイト単位の操作
  12. 文字
    • 文字の表記
    • 文字と文字コード
    • 文字の名前
    • 文字の生成
    • 大文字・小文字の変換
    • 文字の判定
  13. リスト
    • リスト型とコンス型(nilの扱い)
    • 生成
    • 参照
    • 変更とsetf
    • 連結
    • 追加と削除
    • 判定
    • 要素の検索
    • 要素の置換
    • 要素のマッピング
    • 連想リスト
    • 属性リスト
  14. 配列
    • 配列の生成
    • 次元、ランク
    • 可変長配列とフィルポインタ
    • 配列の参照
    • ベクトル
  15. 文字列
    • 文字列とベクトル
    • 文字列への変換
    • 判定
    • 空白の除去
    • 連結
    • 分割
  16. シーケンス
    • 参照
    • 部分取得
    • 要素の数
    • 連結
    • 逆順
    • 要素の検索
    • 要素のカウント
    • 要素の削除
    • 要素の置換
    • ソート
    • マージ
    • マッピング
    • 縮約
  17. ハッシュテーブル
    • 生成
    • 参照と追加・変更
    • 要素の数
    • 要素の削除
    • 初期化
    • 要素に対する繰り返し
  18. ファイルネーム
    • パスネームオブジェクト
    • 文字列への変換
    • パスネームの連結
  19. ファイル
    • 作業中のディレクトリの取得
    • ファイルやディレクトリの存在確認
    • ディレクトリの作成
    • ファイルの属性の取得
    • ファイル名の変更
    • ファイルの削除
    • ディレクトリ内のファイル一覧
  20. ストリーム
    • ストリームの開閉
    • with-open-fileマクロ
    • 文字列ストリーム
    • 文字単位、行単位、バイト単位、ベクトルでの入出力
    • 標準入出力
  21. 出力(format関数)
    • 一般的なフォーマット
    • 数のフォーマット(進数変換・英語・ローマ字・小数点・指数)
    • レイアウトフォーマット(空白・等間隔出力)
    • 制御フォーマット(条件分岐・繰り返し・中断)
    • その他のフォーマット(大文字小文字・単数形複数形)
  22. 入力
    • ビットベクトル(#*)
    • 読込時評価(#.)
    • 読込時条件分岐(#+, #-)
    • 文字列からのread
    • 文字列へのwrite
  23. システムの構築(ASDF)
    • ASDFの準備
    • asdファイルの書き方
    • プロジェクトのロード
  24. 周辺分野
    • 現在時刻の取得
    • 処理時間の計測
    • 関数のトレース
    • ドキュメント文字列
    • 直前の評価結果・式の取得

Copyright (C) 2017- Satoshi Yamamoto (Shoty).
Some rights reserved.