2001-05-30 (Wed)
_ sshd on Windows
sshdを実行するユーザとログインするユーザが違うと、RSA認証でログインした 瞬間に接続を切られてしまう。
$ ssh -v rummywin (snip) Fanfare!!! You are successfully logged in to this server!!! Connection to rummywin closed.
うーん、パスワード認証なら上手く行くのに何でだろう。
2005-05-30 (Mon)
_ いろいろ変更
メールの格納方法とかいろいろ変えてるので、HEADは危険ですよ! まあ、いつだって危険なんだけど。
--import-imapまわりはかなり仕様が変わった。
- --imap-hostなどは--remote-hostに変更。
- デフォルトでは未読メールのみ取得。 (--import-allで全メール取得。--import-imap-allの方がいいかな。)
- デフォルトではフラグは取得せず。 (--import-imap-flagsでフラグも取得。)
これをfetchmail代りに使って運用しよう。 取得したメールをサーバから削除する機能も付けないと。
都合で進捗表示は削ってしまったけど、そのうち--verboseで進捗を出せるようにしたい。 progressbar.rbがラクかなあ。
_ importの進捗表示
結局progressbar.rbを使うことに。
同梱しても問題ないような気もするけど、
class NullObject def initialize(*args) end def method_missing(mid, *args) return self end end begin require "progressbar" rescue LoadError ProgressBar = NullObject end
としておいて、progressbar.rbがある時だけ進捗表示することにした。 (まだ、import_imapのみ。)
2007-05-30 (Wed)
_ mail bomb
rubyforgeからすごい数のメールがruby-core MLに来ていたので、一時的にnoreply@rubyforge.orgをMLから外した。 しかし、すごい数だった。
2013-05-30 (Thu)
_ RubyKaigi2013(1日目)
RubyKaigi2013に参加して発表した。 とりあえず資料を↓に置いておきます。
発表では喋らなかったけど、どっちかというとpackrat parserの実装の方が大変だった。
しかも、遅いし入力が大きいと落ちる。理由は、
- 末尾呼出しの最適化がデフォルトでオフになっている。
- 末尾呼出しの最適化を有効化しても、Procの呼出しの場合は効果がない(多分Proc#callでCの関数をまたぐため最適化が効かない)。
- Immutable::Promiseを使うと、内部的にトランポリンを使っているので、末尾呼出しの最適化ができるけど、Parser#bindなどの実装ではそもそも末尾再帰の形になっていない。しかもPromise使うと余計遅くなる。
- 加えて、Rubyだともともと関数型言語に比べて再帰呼出し回数の上限が低い。 (Ruby 2.0では環境変数RUBY_THREAD_VM_STACK_SIZEで調整できる。)
といった感じかなあ。
Rubyだと提供するインタフェイスは関数型っぽくする場合でも、内部的な実装は命令型にしないと実用的でない気がする。 Scalaも割とそんな感じだし、もともとOOPLだから仕方ないかなあ。
2020-05-30 (Sat)
_ NUTEC NC-102
今までチェーンにはどこでも手に入るKUREのスーパーチェーンルブを使っていたが、NUTECのNC-102に変えてみた。
スプレー直後は浸透しやすくてしばらく経つと飛散しにくくなるのはスーパーチェーンルブに近いかも。色は結構黄色っぽい。
しかし、価格が2倍以上高いのがネック。
_ @@@@ [etch上でFirefox+Flash9だとみえてますょ]
_ shugo [今見たらちゃんと(?)トーフになってました。]