2008-09-01から1ヶ月間の記事一覧

オブジェクトに特異メソッドをくっつけるいくつかの方法

その1 もっとも一般的なやり方。 str="Hello World" def str.say puts self end str.say その2 特異クラスを定義して、その中でメソッド定義する str="Hello World" class << str def say puts self end end str.say その3 moduleを定義して、extendする …

さつまいも収穫

大きすぎです。

メモリが死ぬとログはどうなるのか

お客さんのとこにあるサーバが不自然に落ちたり、 動作が不安定になり、ログを見た結果、メモリが死んだと確信して取り替えました。 その時のログです。以前に同じ現象を経験していたので、 すぐに対処することにしました。 よくわからんメーカーのチップを…

コンソールで高橋メソッドを入力し、画面に表示するサンプル

つまらないサンプルですみません。 package xibbar import javax.swing.{JFrame,JLabel,JButton,SwingConstants} import java.awt.{BorderLayout,Font} import java.awt.event.{ActionListener,ActionEvent} object RealtimeTakahashiMethod { def main(args…

SSLを通すとクッキーが消滅してしまう携帯電話がある

以前に http://d.hatena.ne.jp/xibbar/20080204#1202112258 こんなエントリを書いて、 AUの携帯でSSLを通すとクッキーが消滅してしまう問題を指摘しましたが、 Vodafoneでも遭遇しましたので報告します。 V903SHという機種がダメでした。 というわけで、 AU…

函館に前泊することに

来月の12日あたりに小樽に行く予定だったのですが、 それが登別に変更になりました。 そして、北斗星で行き帰りするつもりだったのに、 北斗星が今は一日一便しかなくなってしまったので、 予約が全然とれなくなってしまったようで全滅してしまいました。 く…

簡単なGUIアプリ

勉強会へ向けて何かアプリを作っておくことになったので、 簡単なGUIアプリを作りました。 swingがわからないと作れなさそうだったので、 Javaの本を久しぶりに買いました。Head First Java 第2版 ―頭とからだで覚えるJavaの基本作者:Kathy Sierra,Bert Bate…

LeopardにMysql/Rubyをインストールする

なんだか WARNING: You're using the Ruby-based MySQL library that ships with Rails. This library is not suited for production. Please install the C-based MySQL library instead (gem install mysql). こんなWARNINGが出るので sudo gem install my…

匿名関数を渡す

rubyのブロックのように匿名関数を渡すこともできます。 object Timer { def oncePerSecond(callback: () => unit) { while (true) { callback(); Thread sleep 1000 } } def main(args: Array[String]) { oncePerSecond(()=> println("time flies like an a…

命令はオブジェクト

scalaの命令はオブジェクトだそうです。 どういうことかというと、引数でファンクションを渡すことができるということです。 object Timer { def oncePerSecond(callback: () => unit) { while (true) { callback(); Thread sleep 1000 } } def timeFlies() …

Scalaの勉強始めます

Scalaの勉強をしてみることにしました。 勉強会のメンバーはみんなJavaな人なのですが、 私は遠い昔にちょっとだけやった程度なので、よくわかりません。 コンパイラがどのような変換をおこなってJavaコードにしているかなんて、 変換されたら余計わかりませ…

文字列に文字列を追加するときに+=を使うのと<<を使うのではスピードが325倍違う

$ time ruby19 -e 's="";50000.times{s+="foobar"};' 4.58s user 9.03s system 99% cpu 13.650 total $ time ruby19 -e 's="";50000.times{s<<"foobar"};' 0.03s user 0.01s system 79% cpu 0.042 totalえーっと、連結スピードが325倍違います。 注意が必要…

ChangeLogの1行目ジェネレータ

#!/usr/bin/ruby now=Time.now puts now.strftime("%a %b #{now.day} %X %Y Takeyuki Fujioka <xibbar@ruby-lang.org>") 本当は1行で作りたかったけど、日付が09とかになっちゃうので、仕方ない。 結果は Tue Sep 9 14:20:44 2008 Takeyuki Fujioka こうなります。</xibbar@ruby-lang.org>

YARVではclass_evalのブロック呼び出しはStringの呼び出しよりも4.6倍速い

IRCでclass_evalのコストの話になって mameさんがベンチマークをとってくれました。 実行したプログラムは i = 0; while i < 100000; Object.class_eval { define_method(:foo) { } }; i += 1; end と i = 0; while i < 100000; Object.class_eval "define_m…

10月の3連休に北海道に行く方法

10/12の夜に小樽に行く用事ができたので、家族で行くことになりました。 行きは北斗星で行きます。 福島から札幌まで約58000円で家族3人で行けます。 (おそらく、福島から札幌に行く、最も楽で安くてバランスがいい方法。) 帰りは北斗星が17時頃出発のた…

火事場のような起業と子育てとの両立は難しい気がする

http://d.hatena.ne.jp/mkusunok/20080903/startup これはid:mkusunokさんのエントリですが、何を甘えたことをと 思いつつもまあこれが一般的に見ても現状なのだろうなと思います。 起業ってそれが一番いい選択だから選択しているのであって、 楽なことも苦…