00:06:32 <g000021> ストリームの概要が説明されたあと身近な
00:07:07 <g000021> 双方向ストリームである*terminal-io*と、入力の*standard-input*出力の*standard-output*の解説があります
00:07:59 <g000021> 基本的に、入出力の関数では、Tは*terminal-io*を表わしていて、NILは*standard-の方を表わすということが説明されています
00:08:18 <g000021> formatが例外なのですが、これについても説明があります
00:08:40 <g000021> 他、入出力系関数の解説がずらっと並びます
00:11:19 <g000021> ((((Creating streams on files))))
00:14:56 <g000021> ファイルからストリームをつくる基本関数であるopenの説明です
00:15:21 <g000021> オプションが網羅的に書いてあるのでリファレンスとして使えますね
00:18:19 <g000021> 他は、file-positionや、with-open-file、with-open-streamの説明です
00:21:27 <g000021> ((((Creating streams on strings))))
00:23:11 <g000021> 文字列からストリームをつくることについての説明です
00:23:38 <g000021> with-input-from-string、with-output-to-string等々の説明
00:23:45 <g000021> ((((Binary I/O))))
00:25:53 <g000021> バイナリとして読み込むストリームの説明です。bitや、unsigned-byte等、様々なタイプとして読むことが可能です。
00:26:11 <g000021> ということで、19章は終わりですが、
00:26:35 <g000021> 基本的なストリームの解説のところを読み飛ばしてました
00:28:40 <g000021> two-way-streamや、broadcast-streamで出力先を0にした場合、/dev/nullのような使い方ができること、concatenated-streamの動作等々、あまり解説されることも多くないと思いますので、一度通して読んで動作を理解しておくと良いかなと思いました
00:28:59 <g000021> 以上で、19章終りです。次回は、20章からです
00:29:05 [g000021'out] ; Quit: ERC Version 5.1.2 $Revision: 1.796.2.4 $ (IRC client for Emacs)
01:28:37 [tsuru``'in]
03:30:37 [tsuru``'out] ; Remote host closed the connection
13:10:39 <PECCU => peccu>
13:35:28 <peccu => PECCU>
23:38:49 [g000022'in]
23:39:02 <g000022> 今日も Successful Lisp / David B. Lamkins ぼっち読書会やります
23:39:08 <g000022> http://psg.com/~dlamkins/sl/chapter20.html
23:39:21 <g000022> 今日は20章で、マクロの解説です。ちょっと長いのがしんどいです
23:39:26 <g000022> ((((Chapter 20 - Macro Etiquette))))
23:43:34 [g000022'out] ; Read error: Connection reset by peer
23:43:58 [g000022'in]
23:45:29 <g000022> ((((Macros are programs that generate programs))))
23:47:58 <g000022> lispのマクロと他のプログラミング言語のマクロを比較して解説しています
23:48:48 <g000022> lispはプログラム自体がリスト表現で簡単に生成でき、扱いも簡単なため、マクロも簡単というような話です
23:49:01 <g000022> ((((Close up: how macros work))))
23:52:50 <g000022> マクロを定義するために使うdefmacroの話と、
23:53:20 <g000022> マクロが引数を評価しないで、フォームとして受けとることが説明されています
23:54:22 <g000022> いつ展開されるかについても、注釈として解説されていますが、細かいですね
23:54:42 <g000022> ((((Backquote looks like a substitution template))))
23:59:45 <g000022> バッククォートについての説明です。