タグ

ブックマーク / dankogai.livedoor.blog (81)

  • javascript - 関数をtraceする : 404 Blog Not Found

    2007年05月18日14:15 カテゴリLightweight Languages javascript - 関数をtraceする amachangのコメントを受けて追記 JavaScript: 関数の追跡 - 文系大学的IT系の悲哀からのTBを受けて追記 書き換えめんどいー。 IT戦記 - JavaScript の関数を「引数そのまま返す化」 alertだけ alert(hoge); hoge.method(); 改行めんどいー。 alert + そのまま返す化 alert.s(hoge).method(); // 1 ステートのまま Functionオブジェクトを拡張 というわけで、関数をtraceするmethodをFunction Objectに追加してみる。 まずは実例。 function add(x,y){ return x + y } add = add.trace('add

    javascript - 関数をtraceする : 404 Blog Not Found
  • たらいを回すならHaskell : 404 Blog Not Found

    2006年04月07日22:09 カテゴリLightweight Languages たらいを回すならHaskell たらい回し関数、またはtakと呼ばれる有名な関数が存在する。 C言語による最新アルゴリズム事典 奥村晴彦 同書をお持ちの方は、185ページに乗っている。 実はこれ、Haskellの売り込みには最高の関数なのだ。 ちなみに、これ最後にyを返すバージョンとzを返すバージョンがあるようで、それぞれtakyとtakzと呼ばれている模様。ここではtakyの方を採用。 まずは、私のnative tongueとも言えるperl。 tak.pl #!/usr/bin/perl use strict; use warnings; sub tak{ my ($x, $y, $z) = @_; ($x <= $y) ? $y : tak(tak($x-1, $y, $z), tak($y-1,

    たらいを回すならHaskell : 404 Blog Not Found
  • 404 Blog Not Found:あなたのページを最速にする14の掟

    2007年05月11日18:45 カテゴリiTech あなたのページを最速にする14の掟 人気Webサイトの管理人、必読。 紹介ページ: 14 rules for fast web pages (Skrentablog) PPTのスライド: http://www.web2expo.com/presentations/webex2007/souders_steve.ppt 実は、これらはYahoo!の"Chief Performance Yahoo!"(当にそういう役職名)であるSteve Soudersによる以下のblog entriesをまとめたもの。 Performance Research, Part 1: What the 80/20 Rule Tells Us about Reducing HTTP Requests Performance Research, Part 2:

    404 Blog Not Found:あなたのページを最速にする14の掟
  • URI - 動的コンテンツのpermalink : 404 Blog Not Found

    2007年05月02日21:45 カテゴリiTech URI - 動的コンテンツのpermalink 返事が来たので、題。 はてなブックマーク - ブックマークたつを / 2007年05月02日 それぞれのURL(パラメタ付きURL)が意味を持っているサイトなのでまとめちゃうとダメなのです…。例えばWikipediaにボット来て重いからといってトップに飛ばしたら個別記事が検索されなくなりますよね。 by 元記事主 動的コンテンツのpermalinkはどうあるべきか。 以下は、全て同一の内容である。 http://ja.wikipedia.org/wiki/%E5%B0%8F%E9%A3%BC%E5%BC%BE http://ja.wikipedia.org/w/index.php?title=%E5%B0%8F%E9%A3%BC%E5%BC%BE http://ja.wikipedia.

    URI - 動的コンテンツのpermalink : 404 Blog Not Found
  • CPAN - URI::Escape::XS Released! : 404 Blog Not Found

    2007年04月28日02:30 カテゴリLightweight Languages CPAN - URI::Escape::XS Released! URI-Escape-XS を Release したのでお知らせします。 on CPAN (coming soon) URI-Escape-XS-0.01.tar.gz なぜ車輪を再発明したかといえば、今ある車輪のころがりがよくなかったから。 URI::Escapeへの不満は二つあって、一つは速度が不十分だったこと。LWPなどと組み合わせて使う場合は、正規表現ベースの変換でも、他のタスクの方がずっと重いので充分速いのですが、ログの解析する時などに利用すると、ずいぶんと遅く感じます。このあたりはある作業をしていて、気になってProfileしてみてはじめて気がつきました。 もう一つは、%uHHHHの対応。一応にぽたん作のURI::Escape:

    CPAN - URI::Escape::XS Released! : 404 Blog Not Found
  • perl - PoCo::Client::HTTP < LWP::UserAgent->new(keep_alive => 1) : 404 Blog Not Found

    2007年04月25日02:00 カテゴリLightweight Languages perl - PoCo::Client::HTTP < LWP::UserAgent->new(keep_alive => 1) POEが大流行しています。私自身POEはちょくちょく使っているのですが、サーバーはとにかくクライアントとなるとそれほど使っていません。 理由は、以下ではありません D-5 出張版 - [開発] PoCo::Client::HTTP decodes content (w/o Permission) Kazuho@Cybozu Labs: Re: PoCo::Client::HTTP が勝手に文字コードを変えてしまう件 理由は、もっと単純。非効率だからです。 以下をご覧下さい。ここでは10000bytesのコンテントを同じサーバーに100回取りに行っています。 % perl lwp

    perl - PoCo::Client::HTTP < LWP::UserAgent->new(keep_alive => 1) : 404 Blog Not Found
  • 404 Blog Not Found:perl - POO と goto

    2007年04月24日00:45 カテゴリLightweight Languages perl - POO と goto というわけで、番。 404 Blog Not Found:perl - 万能なnewの書き方 ここからが面白くなるのだが次のEntryへ譲るここに着目していただきたい。 sub init { my $self = shift; $self->{$_} = $default{$_} for keys %default; $self->SUPER::init(); } 初期化に限らず、自分で何かをしたら次のメソッドに振るというのは、OOでは非常によく見られる光景だ。特にpluginなどを使っている場合、それが著しい。 しかし、このコード、次のメソッドに振っているのはいいのだけど、振ってから戻ってくるのだ。メソッド呼び出しも関数呼び出しに過ぎないのだから、当然といえば当然だ

    404 Blog Not Found:perl - POO と goto
  • 404 Blog Not Found:perl - 万能なnewの書き方

    2007年04月23日22:45 カテゴリLightweight Languages perl - 万能なnewの書き方 Perl 5のOOは、慣れてしまうと簡単だ。 継承とか考えずに、普通にクラスを作りたければ、必要なのは以下の二行だけ。 package Klass; sub new { bless {} }; これだけでは何もできないので、とりあえずnameというアクセサーを追加してみる。これだけ。 sub name { my $self = shift; $self->{name} = shift if @_; return $self->{name}; } しかし、上の形式だと、継承をサポートしていない。だから、 package Klass; sub new { bless {} }; package Klass::Sub; our @ISA = qw/Klass/; # new

    404 Blog Not Found:perl - 万能なnewの書き方
  • 404 Blog Not Found:perl tips - Encodeを速く使う方法

    2007年04月23日01:30 カテゴリLightweight LanguagesTips perl tips - Encodeを速く使う方法 はっきり言ってこれはフェアではない。 みかログ: ErlangとPerlの速度比較 Perl側は,Encodeが遅い. Encode::from_toがinplaceでコンバートしてしまうために,直前に文字列コピーがあるのも影響しているのかも なぜなら、Encode::from_to()は速度ではなく、安全性に最適化しているから。 そもそもはじめからUTF-8、それもutf8フラグがたっている文字列にfrom_toを使うのはばかげている。 for(my $i = 0; $i < 0xffff; $i++) { my $str2 = $str; Encode::from_to($str2, "UTF-8", "Shift_JIS"); } は単に

    404 Blog Not Found:perl tips - Encodeを速く使う方法
  • 404 Blog Not Found:javascript - 勝手に添削 - JavaScript入門

    2007年04月12日23:30 カテゴリLightweight Languages javascript - 勝手に添削 - JavaScript入門 釈迦に説法を承知で。 IT戦記 - 社内勉強会資料 amachang - JavaScript 入門Object.prototype = { /* ... */ }は避けるべし みにくいのでオブジェクトを入れ替える方式に Box.prototype = { speed: 4, move: function() { this.left += this.speed; this.element.style.left = this.left + 'px'; if (this.left > 400) clearInterval(this.id); }, start: function() { var self = this; this.id = s

    404 Blog Not Found:javascript - 勝手に添削 - JavaScript入門
  • 404 Blog Not Found:YAPC::Asia::2007 - 弾のスライド

    2007年04月05日10:45 カテゴリYAPC::Asia YAPC::Asia::2007 - 弾のスライド 日は昨日よりもWiFiの具合がいいみたい。 私担当の講演のスライドですが、以下のとおり公開しました。 YAPC::Asia::2007 - Perl I18N in 20 minutes YAPC::Asia::2007 - An Ordinary Perl 6 Guide Synopsis: スライドは←→の矢印キーで切り替えです。Firefox推奨。 "Translate"にチェックを入れると、Ajaxで自動翻訳します。 Palさん、Perl 6 for Ordinary People の方で絵をお借りしました。この場を借りて事後承諾&感謝。 Dan the Speaker Thereof @ Tsuda Hall 「YAPC::Asia」カテゴリの最新記事

    404 Blog Not Found:YAPC::Asia::2007 - 弾のスライド
  • 404 Blog Not Found:javascript CSS - google-code-prettifyの導入

    2007年03月26日16:00 カテゴリAnnouncementLightweight Languages javascript+CSS - google-code-prettifyの導入 google-code-prettifyをblogでも導入しました。 google-code-prettify - Google Code ex: 404 Blog Not Found:CGIの神話と現実 404 Blog Not Found:たらいを回すならHaskell cf: 404 Hatena::Diary not Found - [Hatena::Diary] スーパーpre記法のテスト ここでは、Livedoor Blogでの具体的な導入法を解説します。 必要なファイルの入手とインストール 以下のファイルを入手して、アクセスできるようにしておきます。 http://google-cod

    404 Blog Not Found:javascript CSS - google-code-prettifyの導入
  • 書評 - スピード ハックス : 404 Blog Not Found

    2007年03月25日17:00 カテゴリ書評/画評/品評 書評 - スピード ハックス 実はクチコミの技術を頂いた際に、シゴタノ!の大橋さんもいらして、これまた人から書をいただいきました。ありがとうございます。 スピード ハックス 大橋悦夫/ 佐々木正悟 しかしこちらの書評を後回しにした理由は.... すでに飛ぶように売れているのです。 私が頂いた「スピード ハックス」は、奥付によると2007年3月1日第3刷。初版が今年2月10日なので、一月未満でこれです。しかも大橋さんによると、初版が1万部。このご時世にこれはすごい。 前置きはこれくらいにして、書の紹介を。「スピード ハックス」は、副題に「仕事のスピードをいきなり3倍にする技術」とあるとおり、仕事をてきぱきと片付ける術の指南書。 目次 - シゴタノ! - 『スピードハックス』をテコにより まず「取りかかる」気持ちを起こす 「段取

    書評 - スピード ハックス : 404 Blog Not Found
  • javascript - encodeURIUnicode()と%uXXXX問題 : 404 Blog Not Found

    2007年03月10日17:30 カテゴリLightweight Languages javascript - encodeURIUnicode()と%uXXXX問題 これを見て、(de|en)codeURIUnicodeがあればいいと思ったので作ってみた sawatの日記 - Unicodeエスケープ なので、前述のような単に非ASCII文字をエスケープしたいだけのようなケースではUnicodeエスケープを使った方がよいです。Javaのpropertiesとかnative2asciiとかのやつです。 Decoded: Dan 弾 𪚲 Encoded: Dan%20%u5F3E%20%uD869%uDEB2 要は、U+00ffまではencodeURIComponent互換、それ以上はescape()互換というもの。こうしてencodeされたものは、CGI.pmとかでもほぼそのまま使える。

    javascript - encodeURIUnicode()と%uXXXX問題 : 404 Blog Not Found
  • javascript - URIのasin:スキームを実装する : 404 Blog Not Found

    2007年03月19日21:00 カテゴリLightweight Languages javascript - URIのasin:スキームを実装する とっくに発明されてていい車輪でありながら、どうも見当たらなかったので作りました。 ご自由にご利用ください。出来ればアフィリエイトIDはblogsofdankog-22のままで:-p <script type="text/javascript" src="http://blog.livedoor.jp/dankogai/js/asinjp.js"></script> <script>ASINjpHandler('blogsofdankog-22');</script> まるごとJavaScript & Ajax ! Vol.1 小飼弾他 とするだけで、 <a href="asin:4844323644"> <img src="asin:4844

    javascript - URIのasin:スキームを実装する : 404 Blog Not Found
  • 「この記事へのソーシャルブックマーク」を追加 : 404 Blog Not Found

    2007年03月21日22:44 カテゴリBlogosphere 「この記事へのソーシャルブックマーク」を追加 見ての通り、「この記事へのトラックバック」の上に、各種ソーシャルブックマークでのコメント数を表示するようにしてみた。 特にはてブに関しは、「その場で表示」にも対応してみた。Livedoor Blogをお使いの他の方はこれで役に立つかも。 以下、作業メモ テンプレートの編集が必要なので、デザインは「カスタム」に設定 個別記事ページのテンプレートに、以下を加える。 <div class="trackback-body"> <span style="float:right"> <a target="_blank" rel="bcomment-viewer" href="http://b.hatena.ne.jp/entry/<$ArticlePermalink$>" class="bo

    「この記事へのソーシャルブックマーク」を追加 : 404 Blog Not Found
  • 404 Blog Not Found:はてブ以外のSBM

    2007年03月19日17:30 カテゴリBlogosphere はてブ以外のSBM はてブがメンテ落ちしている隙をついて、他のソーシャルブックマーク(SBM)へのブックマークボタンを追加してみたので、ついでに各SBMの感想をまとめてみる。 ブックマークボタンを追加したもの Livedoor Clip 率直に言って、数あるブックマークサイトの中では一番よく出来ていると思う。 デザイン すっきりしていていい。キャプチャー画像の使い方もいい。 ただし、ユーザー数の表示がピンクというのはいただけない。 ユーザビリティ これは各SBMの中でトップ。Livedoor Readerを作っただけのことはある。当然Livedoor Blogとの連携はばっちし。表示を「詳細」「一覧」「画像」と切り替えられるのも素晴らしい。この点に関しては、なぜ他で真似しないか不思議。 API 現時点ではてブに対して見劣りす

    404 Blog Not Found:はてブ以外のSBM
  • perl - for(1..1e10) と Iterator : 404 Blog Not Found

    2006年12月22日11:00 カテゴリLiving on the Edge perl - for(1..1e10) と Iterator いい点に気づかれました。 perl の配列とメモリー: 国民宿舎はらぺこ 大浴場 面白いな、と思ったのは、上記リンク先の話題を手元で試していたときに、 @data = map { rand 10 } (1..1e7); $sum += $_ for @data; だとメモリーを喰いまくるのに、 $sum += rand 10 for 1..1e7; だとほとんどメモリーを喰わないこと。 実は、foreach($from..$to)は、Perl 5.005以来最適化されています。 perl5005delta - what's new for perl5.005 - search.cpan.org foreach (1..1000000) optimiz

    perl - for(1..1e10) と Iterator : 404 Blog Not Found
  • JavaScript.bible = this - 書評 - JavaScript: The Definitive Guide : 404 Blog Not Found

    2012年08月04日14:30 カテゴリ書評/画評/品評Lightweight Languages JavaScript.bible = this - 書評 - JavaScript: The Definitive Guide 全く同様の理由で入手しておくべきなのが、こちら。 JavaScript 第6版 David Flanagan / 木下哲也訳 [原著:JavaScript: the Definitive Guide (6th Ed.)] naoyaグループ - naoyaの日記 - Emacs を使えるようになりたい人は「なぜ」はリファレンスには書いていないですから。 ただし、5th Edition以降を入手すること。邦訳は第三版、JavaScript 1.2ベースで、ちょっと古過ぎて薦めづらい。 2011.12.21更新 2012.08.04 第6版邦訳にあわせて更新 元書評

    JavaScript.bible = this - 書評 - JavaScript: The Definitive Guide : 404 Blog Not Found
  • perl/javascript - 関数内関数で仮引数を省略 : 404 Blog Not Found

    2006年10月16日07:30 カテゴリLightweight Languages perl/javascript - 関数内関数で仮引数を省略 そんなことありませんぞよ。 Structure and Interpretation of Computer Programs H. Abelson / G. Sussman / J. Sussman [邦訳:計算機プログラムの構造と解釈] IT戦記 - Perl で再帰呼出し時のスタック間データ共有 再帰呼び出しのスタック間でデータを共有する場合は、以下のように仮引数を使わなければならない。*1 以下のようにすればOK。もちろんdocument.allないしdocument.getElementsByTagName('*')を使えば再帰の必要もないのだけど例として手頃だったので。 function count_tags(node){ var

    perl/javascript - 関数内関数で仮引数を省略 : 404 Blog Not Found