GNU Emacs Lisp における(多くの) I/O 関数は、 (文字の) read 及び print を行なう ソース及びシンクとしてストリームを用います。ストリームは、(要求されると) 文字 を提供したり、"出力" 用に文字を受け取ったりする Lisp オブジェクトです。入力ス トリームはどんな方法で文字を得てもかまいません。出力ストリームは(与えられた文 字を)どのように扱ってもかまいません。
もちろん、(通常)入力ストリームは文字を、キーボード、バッファ、ファイルから得、 出力ストリームは文字をエコーエリアに print するか、バッファに挿入します。
ストリームを用いる関数(のほとんど)はこのチャプターに記述されています。これに加 え、disassemble (チャプター 14 [disassemble]、ページ 119 参照) と (set- process-filter??) もストリームを用います。
Variable: values
この変数の値は、読み込まれ/評価され/表示された(全ての)式で返された値のリス トです。この順は時間的に逆順です。
(setq x 1) => 1 (list 'A (1+ 2) selective-display-ellipses) => (A 3 t) values => ((A 3 t) 1 ...)