* Menu
[[About:self:AboutPage.txt]] | [[Profile:http://iddy.jp/profile/southly/]] | [[まとめ:self:1163859357.txt]] | [[オリジナル:http://ninjinix.x0.com/rn/]] | [[xyzzy:http://raido.sakura.ne.jp/southly/xyzzy/site-lisp/]] | [[あんてな:http://i-know.jp/southly/listall]] | [[■:http://raido.sakura.ne.jp/southly/lisp/ni/view.lisp]] | [[buzz:http://www.google.com/profiles/southly#buzz]]
- xyzzy : xyzzyのformatまとめ
- Scrapbook : ダウンロードの詳細 : Visual C++ 2005 SP1 再頒布可能パッケージ (x86)
- 2007-08-30
- 2007-08-28
- 2007-08-11
- lisp : 破壊とか非破壊とかの話
- lisp : reader macro
- Scrapbook : klee
- Scrapbook : Lisp500
- Scrapbook : SIOD: Scheme in One Defun
- Scrapbook : @nifty:デイリーポータルZ:サインをねだられると、人はどんなサインを書くのか
- Scrapbook : はなまるチェッカー
- Scrapbook : Open Tech Press | Firefox拡張:FireGPGを使ったGmailの暗号化と署名
- Scrapbook : cl-cairo2 project
- Scrapbook : STL Error Decryptor for C++
page 6 - << : 0 : 1 : 2 : 3 : 4 : 5 : 6 : 7 : 8 : 9 : 10 : 11 : 12 : 13 : 14 : 15 : 16 : 17 : 18 : 19 : 20 : 21 : 22 : 23 : 24 : 25 : 26 : 27 : 28 : 29 : 30 : 31 : 32 : 33 : 34 : 35 : 36 : 37 : 38 : >>
* xyzzy : xyzzyのformatまとめ
汎用
Common Lispの解説
http://www.yuasa.kuis.kyoto-u.ac.jp/~hiraisi/format-func.html
- [[~A:self:1164028796.txt]] : princ形式で出力
- [[~S:self:1164028803.txt]] : prin1形式で出力
- [[~W:self:1164028786.txt]] : write形式で出力
- [[~B:self:1150429975.txt]] : 2進表記
- [[~O:self:1150430382.txt]] : 8進表記
- [[~D:self:1150343823.txt]] : 10進表記
- [[~X:self:1150618922.txt]] : 16進表記
- [[~R:self:1159968537.txt]] : 任意の基数で
- [[~F:self:1164028811.txt]] : 固定小数点表記
- [[~E:self:1164028820.txt]] : 指数表記
- [[~G:self:1164028827.txt]] : いい感じに
- [[~$:self:1163475871.txt]] : 通貨フォーマット
- [[~C:self:1152590036.txt]] : 文字
- [[~%:self:1152675814.txt]] : 改行
- [[~&:self:1152849021.txt]] : 桁が0になるように
- [[~\n(改行):self:1153193817.txt]] : 改行の無視
- [[~|:self:1152849261.txt]] : 改ページ
- [[~T:self:1153798673.txt]] : 桁そろえ
- [[~~:self:1152849385.txt]] : "~"出力
- [[~P:self:1152589222.txt]] : 複数形
- [[~*:self:1153799964.txt]] : 引数の参照を操作
- [[~?:self:1159156206.txt]] : 間接指示
- [[~{:self:1159888552.txt]] : 繰り返し
- [[~[:self:1159501711.txt]] : 条件分岐
- [[~(:self:1159328961.txt]] : 大文字・小文字の変換
- [[~^:self:1159900280.txt]] : 処理の切り上げ
Common Lispの解説
http://www.yuasa.kuis.kyoto-u.ac.jp/~hiraisi/format-func.html
* Scrapbook : ダウンロードの詳細 : Visual C++ 2005 SP1 再頒布可能パッケージ (x86)
lang=ja&FamilyID=200b2fd9-ae1a-4a14-984d-389c36f85647
* 2007-08-30
- [[Closureを動かしてみた:xyzzy/img/closure.png]]
- 日本語はダメみたい。localeで何とかなったりするかな。
- あとポコポコ落ちる。何が悪いのやら。
* 2007-08-28
- そろそろ休みボケも治ってきた。
- [[Planet xyzzy:lanet/]]の更新が止まってます>bulbさん
- i-knowのデータが狂っているので補完のためにも復帰して欲しいッス。
- 無性にカレーが食べたくなって、久しぶりに包丁を握った。
- Linuxのデスクトップ環境を触ってみたくなったのでVMWareにDebian etchをインストール
- ネットワーク設定はやっぱり鬼門
- しばらくvimいじっていたけどやっぱxyzzyは便利だ
[[(ReadMore...) index.rb?1188239902.txt]]
* 2007-08-11
今日から夏休み。
* lisp : 破壊とか非破壊とかの話
[[SANOさんとこ:http://snmsts.dreamhosters.com/wiki/?%C6%FC%B5%AD%A4%C3%A4%DD%A4%AF%2F2007-08-11#i7f0cca5]]の補足のつもり。(だけど補足になれているかどうかは不明)
整理し切れていないので箇条書きで。
整理し切れていないので箇条書きで。
- Common Lispのオペレータには関数・マクロ・スペシャルフォームがあるけど、この件が関係するのは関数のみ。
- 純粋な意味での「関数」はいくつかの引数をとり、結果を返すということだけをするもの。(数学における意味での「関数」に近い)
- 「関数」が結果を返すこと以外に他へ影響を与えることを副作用という。引数の破壊は副作用の一種。
- 純粋な意味での「関数」として使っていれば、引数の破壊が起こっていてもいなくても同じ結果が得られる。
- それなのにわざわざ副作用をもつ破壊的な関数を用意するのは効率のため。
- 破壊的な関数は同等の非破壊関数で置き換えられる。置き換えられない使い方は間違い。
- 非破壊関数を同等の破壊的な関数で置き換えられるかどうかは、状況次第。
- どっちを使ったら良いか分からないときは非破壊関数を使うべし。効率が悪いかもしれないけれどxyzzyで使う程度の処理で差が出るなんてことはほとんど無いと思う。
- 副作用が目的の関数(vector-popとかvector-pushとか)は引数が変更されても破壊的と称さないっぽい。