]]>
]]>
]]>
]]>
]]>
]]>
]]>
]]>
コマ漫画版 関数型プログラミング本を読んでみた女子の日常]]>
]]>
]]>
いつの間にか、増補版のページ数がすごいことになってきました。。。
その内容は今のところ、以下のようになっています。
----
Contents
1. 関数型プログラミングでもっと言いたかったこと
(1) λ計算
(2) 評価戦略 - 遅延評価
(3) 並行・並列処理 - スレッドセーフ、リエントラント
(4) 副作用はバグの温床 - グローバル変数と代入文(増補)
(5) 参照透過性を持つ関数型プログラミングは形式手法(数学的手法)とマッチする
(6) 関数型プログラミングの利点と欠点の具体例
2. Lisp の特徴でもっと言いたかったこと
(1) 強力・柔軟なマクロ
(2) 動的関数定義
(3) S式とM式
(4) 関数閉包(クロージャ)と継続(コンティニュエーション)
(5) 多値 multiple value
(6) Lisp のベンチマークプログラム tarai
(7) オブジェクト指向機能
(8) 適用可能メソッドの優先順位によるパターンマッチ
(9) Lisp はマルチパラダイム言語
(10) Lisp は世界最大の言語で世界最小の言語
(11) タイプとクラスの怪しい関係、さらに構造体との三角関係
(12) Lisp-1 v.s. Lisp-2
(13) Lisp プログラムのパフォーマンスチューニング
(14) GC(Garbage Collection)
(15) データもプログラムも同じS式で表現(増補)
(16) 無限長整数 bignum のサポート
(17) 汎変数 generalized variable
(18) メタサーキュラーインタプリタ metacircular evaluator
(19) 末尾再帰 tail recursion
(20) クロージャは苦労するんじゃ
(21) インターン - シンボルテーブルに囚われし者
(22) レキシカルスコープ - 歴史あるスコープ
(23) 深い束縛と浅い束縛、あなたの好みは?
(24) スペシャル変数またの名を動的変数、その罪深き者へ
(25) Lisp の掟その一 - ネーミング規則
(予定)(26) Lisp の掟その二 - プリティプリント~インデントの深い闇
---以下、省略---]]>
Contents
1. 関数型プログラミングでもっと言いたかったこと
2. Lisp の特徴でもっと言いたかったこと
3. Lisp ジョーク - Lisp に関するジョークいろいろ
4. Lisp の歴史
5. Lisp 事例 - Lisp で書かれたいろいろ
6. サンプルプログラム
7. やさしい Lisp 処理系の作り方
8. Lisp いじわるクイズ(または Lisp 能力検定)
9. FAQ
(1) すべてのプログラムは副作用のないプログラムで実装できますか?
(2)「動的型付けの実装が面倒」とは、どういう点が実装が面倒と言ってるのでしょうか?
(3) そもそも難しくないプログラミングなんてあるのでしょうか?
(4) 関数型プログラミングは結局、何がいいんでしょうか?
(5) なぜ関数型プログラミングは難しいのか?]]>