2008-09-14
■ [softs][mac] MacでDropbox使い始めたけど
同期するときにCPUのコアを一つ使い切るのでうざい。熱いよ。
/Users/yhara/proj/ 以下 (ソースコードがいろいろ置いてある) を同期させてるんだが、再起動するたびに全ファイルをスキャンし直してる疑惑。
それさえ目を瞑れば、バックアップソフトとしては非常にお手軽ではある。勝手に同期するんでいちいちソフト起動する手間がないし、ディスク用意する必要すらないし。
■ [ruby][scheme] RubyistがSchemeに惹かれたわけ
まつもとさんの指摘によれば「LISP-2という点で、RubyはSchemeよりCommon Lispに似ている」。
じゃあなんで僕はSchemeを気に入ったんだろう?と考えてみたところ、「統一感」や「一貫性」を重視するところじゃないかという案を思いついた。
- Rubyの統一感
- 全てがオブジェクトであること。どこでもselfが定義されていること。
- Schemeの統一感
- 述語は「?」で終わるとか、「foo->bar」みたいな命名規則。
…いまいち説得力に欠けるかな。どうだろう。
■ [prog][stack] Factorやるじゃん
: qsort ( array -- new )
dup length 1 > [ [ rest ] [ first ] bi [ [ > ] curry filter qsort ]
[ nip suffix ] [ [ <= ] curry filter qsort append ] 2tri ] when ;
[Factorでクイックソート - anatoo記 - ハチロク世代より引用]
みじかくね?
一般に普及するには独特すぎる(少なくとも時間はかかるだろう)と思うのだけど、スタック言語気になるわー。
追記
なんでスタック言語がここに来て一部で流行ってるのかというと、「関数を組み合わせて」プログラムを作るという 関数型言語のパラダイムとスタックが意外にも相性が良いことが分かったからだと理解している。
- Joy: http://www.latrobe.edu.au/philosophy/phimvt/joy.html
- Cat: http://www.cat-language.com/
- Factor: http://factorcode.org/
てかPEGライブラリとかあるのかー