トップ «前の日記(2010-06-05) 最新 次の日記(2010-06-23)» 編集

Route 477



2010-06-21

[ruby][memo] 1.9のスレッド

pros

  • Tkなどのネイティブスレッドを使うライブラリとの相性が良くなった
  • コンテキストスイッチが速い

cons

  • スレッドを作ったときにスタックが固定量確保されるので:
    • stack level too deepになる限界が早くなった
    • (動かさない)スレッドを大量に作った場合にもメモリ消費が大きい

まあどちらかというとFiberの方が活用された気もしますが…

[ruby] ruremaコマンドでローカルWebサーバを起動できるようになった

るりまの私家版コマンドラインツール、myruremaをバージョンアップしました。

るりまの公式ツールであるbitclustには、ローカルでサーバを起動して、Web版と同じ画面をブラウザで見られるという機能があります。 今回のバージョンアップで、ruremaコマンドをこれに対応させました。

 $ rurema --server --browser

とすると、自動的にサーバが起動し、ブラウザで http://localhost:9292/view/ を開きます。

[ruby] 毎回「git」と打つのが面倒な人のためのツール、reposh 0.1.8をリリースしました

便利だと思うんだけど俺以外に使ってる人をみたことないツール、reposhを久しぶりにバージョンアップしました。

reposhは毎回「git」とか「svn」とか打つのが面倒な人のためのツールです。

reposhがない場合:

 $ git st
 $ git add -A
 $ git ci

reposhがある場合:

 $ reposh
 > [Enter]     # 空Enterでgit statusを表示します
 > add -A
 > ci

普通のコマンドは「:」から始めます。

 > :ls

あと、設定ファイル(~/.reposh.yaml)で俺コマンドを定義できたりもします。 最近はgit svn rebaseを「get」、git svn dcommitを「put」に割り当てています

どのVCSを使っているかは、.gitや.svnの存在を見て自動的に判定されます。*1

今回のアップデートではgitに対応した(.gitがあったらgitと判定)のと、カレントディレクトリに.git等がない場合は上のディレクトリも見るようにしました。

インストール

(1) gemでインストールする

$ gem install reposh

(2) 必要なら設定ファイルを書く

$ vi ~/.reposh.yaml

サンプルの設定ファイル: http://github.com/yhara/reposh/blob/master/sample.reposh.yaml

(3) プロジェクトのディレクトリに移動し、起動する

 $ reposh
 loaded config file: /Users/yhara/.reposh.yaml
 Welcome to reposh 0.1.8 (mode: git)
 >

(4) Enjoy!!

*1 なのでsvnとhgとsvkを使い分けてた時代はとても便利だったんですけど、最近はgitしか使ってないという…

[ruby] ネット上から消失した_why先生を偲ぶイベントが開催予定

hpricotやshoes、camping、markabyなどさまざまな作品を残してネット上から消えてしまったWhy The Lucky Stiffを偲び、8/19に「_why的なハック」のコンテストが開かれるそうです。