CL-USER> (let ((v "hoge"))
           (list (print v)
                 (prin1 v)
                 (princ v)
                 (pprint v)))
"hoge" "hoge"hoge
"hoge"("hoge" "hoge" "hoge" NIL)
 |  
prin1
関数readに適した出力,すなわちLispプログラムに適した出力を生成する.
princ
prin1がLispプログラムに適した出力を生成するのに対し,princはユーザの見やすい出力を生成する.エスケープ文字も出力されない.
先頭に改行が付加される点を除いてprin1と同じである.
pprint
続くスペースを空行にすることを除いてprintと同じである.
| (princ "\n\nこんにちわ!") | 
↓ 
↓ こんにちわ!  | 
| (prin1 "\n\nこんにちわ!") | \n\nこんにちわ! | 
追記
どうでも良いことだけど、やっぱこうかな。CL-USER> (mapcar (lambda (e)
                   (funcall e "hoge"))
                 `(print princ prin1 pprint))
"hoge" hoge"hoge"
"hoge"("hoge" "hoge" "hoge" NIL)
 | 
0 件のコメント:
コメントを投稿