タグ

2011年2月5日のブックマーク (5件)

  • Devel::NYTProfからコールグラフを生成する - Shohei Yoshida's Diary

    ソースコードを追っかけるときにコールグラフが分かっていると便利です。 時間が十分あるのであれば、自分でじっくり追いかけるというのもありかと 思うんですけど、事前にコールフローが分かっている方が、確実に追いかけることができます。 以前作成した Google URL Shortener APIを使う - syohex’s diary のコールグラフを見てみようと思います。 準備 KCachegrindをインストールします。Qtが使われているので、Ubuntuなんかの GNOMEが使用されているディストリだと大量のライブラリが入りますけど、 そこは我慢ということでインストールしてください。 % sudo aptitude install kcachegrind当たり前ですが、Devel::NYTProfもインストールします。 % cpanm Devel::NYTProf プロファイル結果の出力

    Devel::NYTProfからコールグラフを生成する - Shohei Yoshida's Diary
  • にひりずむ::しんぷる - 初めての Furl

    巷でとっても速くて便利だねこれってなってる HTTP Client であるところの Furl の簡単なつかい方を紹介します。 そもそも Furl は何かっていうと、perl には LWP っていう超高機能な HTTP Client があって、これがデファクトになってるんですね。 でも、それって結構昔からあって、かつ重厚長大なモジュール群なので結構遅いわけです。とくに CPU 使用率が高い。 そんなわけで、libcurl ぐらい速くて軽い HTTP Client があるといいよねってことで開発されたのが Furl です。 読み方は ふぁーる。 use strict; use warnings; use 5.0100; use Furl; my $furl = Furl->new(agent => 'Madoka-Magica/chu-2'); my $res = $furl->get('ht

  • 会社の飲み会で偉い人の隣でにこにこ笑いながらなんでこんなことをしているんだろうと考えていた。

    1 名前:以下、はてなにかわりまして元増田がお送りします。 投稿日:2010/12/04 22:35:55会社の飲み会で偉い人の隣でにこにこ笑いながらなんでこんなことをしているんだろうと考えていた。年の近い人たちのテーブルにやっとこさついたのに、周りからあっちがあいているからいけと暗に陽に言われて、いつものとおり偉い人の隣だ。年の近い人と愚痴を言い合ったりしたいし、話をしたいと思うことだってあるのに、必ずいつもそうなる。学生時代からずっとそうやってきたから慣れてはいるし、にこにこするのにも年季が入ってきたけど、でもつらいことには変わりはない。同じ部署の別の女性は、そういう扱いをするならお金払えって感じだよねと始まる前にトイレで言っていたけれども、うまいこと隅っこの方で目立たないように仲のいい人たちと話しているのが見えた。当にお金をもらってしまったらそれこそ悲惨だと思いながらもそうだよね、

  • Xslate meets Scalar::Defer - Islands in the byte stream (legacy)

    Template-Toolkitだと関数呼び出しの引数がない場合、括弧を省略できます。しかし、Xslateではかならず括弧が必要であり、この点が非互換となっています。これは、テンプレート内のシンボルの型を意識したほうがテンプレートコードの読みやすいからだと考えたからです。 しかし、データ型を知らないほうがいいこともあります。たとえば、必ずしも使用するわけではないデータの生成のコストが高いとわかったとき、そのデータをあとから遅延評価したい、ということもあるでしょう。しかし、あとから変数の参照を関数の呼び出しに変更するのは大変な作業です。 このような場合、以下のようにScalar::DeferやScalar::Lazyを使うことで、テンプレートを書き換えることなくパラメータの遅延評価を行えるようになります*1。 #!perl -w use 5.10.0; use strict; use Tex

    Xslate meets Scalar::Defer - Islands in the byte stream (legacy)
    gfx
    gfx 2011/02/05
    blogged
  • Module: ActionView::Partials

    There‘s also a convenience method for rendering sub templates within the current controller that depends on a single object (we call this kind of sub templates for partials). It relies on the fact that partials should follow the naming convention of being prefixed with an underscore — as to separate them from regular templates that could be rendered on their own. In a template for Advertiser#accou