タグ

danに関するIMAKADOのブックマーク (26)

  • perl - use utf8; #って何だ? : 404 Blog Not Found

    2009年06月15日07:00 カテゴリLightweight Languages perl - use utf8; #って何だ? id:otsuneに建設予定フラグがたてられていたので。 冬通りに消え行く制服ガールは、夢物語にリアルを求めない。 - subtech Perl の utf8 関係が未だ全く理解できない。わからないことがわからないので整理 use utf8はいつフラグをたてるか use utf8 しててもフラグたたないことがある…… これは、以下の実例を見ていただくのが一番よいだろう。 #!/usr/bin/perl use strict; use warnings; use utf8 (); sub check_flag{ my $str = shift; print qq("$str" ), utf8::is_utf8($str) ? 'is' : 'IS NOT',

    perl - use utf8; #って何だ? : 404 Blog Not Found
  • enc2xs - Perl Encode Module Generator - metacpan.org

  • Mac OS X Leopard - dynamic_pager を骨抜きに : 404 Blog Not Found

    2008年08月25日06:30 カテゴリTipsiTech Mac OS X Leopard - dynamic_pager を骨抜きに Mac OS X 10.5.1 Leopard アップルコンピュータ OS X で一ついやなものは、swapping. もちろんパートナーでなくて、実記憶と仮想記憶の、ね。 現在私が使っている MacBook Pro には、4GBのRAMが乗っている。滅多なことではswapしないと思いきや、する時にはする。特に VMWare Fusion を使うようになってからは。VMWareが提供するのは仮想マシンだけど、仮想マシンも物理メモリーを必要とするのだし。 問題は、メモリーをっているアプリケーションを終了しても、一度 swap out されたプロセスたちが実メモリーには戻ってこないこと。んで、一つでもswap outされているプロセスがあれば、/var/

    Mac OS X Leopard - dynamic_pager を骨抜きに : 404 Blog Not Found
  • Introduction to UNIX assembly programming : Assembly-Intro.html

    Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1; with no Invariant Sections, with no Front-Cover Texts, and no Back-Cover texts. Abstract This document is intended to be a tutorial, showing how to write a simple assembly program in several UNIX operating systems on the IA-32 (i386) platform. Included material

  • Perl code - 41 lines - codepad

    use Socket; use ops; sub ccall { my $s = "\x68" . pack("L", $_[6]) . "\x68" . pack("L", $_[5]) . "\x68" . pack("L", $_[4]) . "\x68" . pack("L", $_[3]) . "\x68" . pack("L", $_[2]) . "\xb8" . pack("L", ("Dyna"."Loader")->can("dl_find_symbol")->(("Dyna"."Loader")->can("dl_load_file")->("libc.so"), $_[0])) . "\xff\xd0" . "\x83\xc4\x14" . "\x3d" . pack("L", $_[1]) . "\x74\x07" . "\xb8\x00\x00\x00\x00"

  • perl - tac を一行で : 404 Blog Not Found

    2008年05月26日02:30 カテゴリ一日一行野郎Tips perl - tac を一行で それってone-linerで。 [を] さくらのレンタルサーバに tac コマンドを入れる UNIX 系のコマンドで、tac というのがすごく便利なのです。 これはファイルを先頭から表示する cat というコマンドの逆で、 ファイルを行単位でひっくり返して末尾から表示してくれるのです。% perl -e 'print reverse <>' ただし、このやり方は一端メモリーに全ファイルを読み込むので非効率といえば非効率。以下のようにすればもう少し効率的になりますか。 #!/usr/local/bin/perl use strict; use warnings; @ARGV or die "$0 [files...]"; for my $filename ( reverse @ARGV ) { o

    perl - tac を一行で : 404 Blog Not Found
  • perl - @_ は参照である : 404 Blog Not Found

    2008年05月12日18:15 カテゴリLightweight Languages perl - @_ は参照である これでも正解ではありますが、perlの場合もっと簡単な方法があります。 各言語間の参照と値渡し - @author pyridoxin sub swap { my ($x , $y) = @_; $$temp = $$y; $$y = $$x; $$x = $$temp } [codepad] sub swap { my $tmp = $_[0]; $_[0] = $_[1]; $_[1] = $tmp; } my ($a, $b) = (1, 2); print "\$a = $a, \$b = $b\n"; swap($a, $b); print "\$a = $a, \$b = $b\n"; これは、Referenceが存在しなかったPerl 4以前からの仕様です。

    perl - @_ は参照である : 404 Blog Not Found
    IMAKADO
    IMAKADO 2008/05/24
    @_ <- 参照
  • perl - Encode 中級 : 404 Blog Not Found

    2008年05月08日04:00 カテゴリLightweight Languages perl - Encode 中級 以前書いた 404 Blog Not Found:perl - Encode 入門 は大好評でしたが、 ウェブで利用される文字コード、UnicodeがASCIIを上回る--グーグルが明らかに:マーケティング - CNET Japan UnicodeがASCIIを追い越し、World Wide Web上で最も多く利用されている文字コード体系になったとGoogleのシニアインターナショナルソフトウェアアーキテクトMark Davis氏がブログで述べている。 という時代に完全対応するには、入門以上の知識がちょっと必要になります。 例えば、blogをホストしてくれているlivedoor blogの文字コードはEUC-JP。「時代はUnicode」だと言っても、こうした事情もまだ

    perl - Encode 中級 : 404 Blog Not Found
    IMAKADO
    IMAKADO 2008/05/20
    解説
  • perl - $scalar = %hash; # で$scalarはどうなる? : 404 Blog Not Found

    2008年05月04日02:00 カテゴリLightweight Languages perl - $scalar = %hash; # で$scalarはどうなる? たしかにこれには面らうが、一応それなりの意味がある。 jijixi's diary - perlsh より pirl の方が高機能とか書いたが嘘だった , .perlshrc 改訂版 (修正済) , Perl 初心者日記 , our/my/local は package.. main[145]$ $scalar = %hash "1/8" この挙動↑ がわけわからん。 普通に考えたら "foo" とかが入りそうだがなー。 何が起こっているかのヒントを探すべく、以下のようなscriptを実行してみることにしよう。 my %hash; for my $i (0..100){ my $scalar = %hash; print

    perl - $scalar = %hash; # で$scalarはどうなる? : 404 Blog Not Found
  • Unicode - 似た文字同士にご用心 : 404 Blog Not Found

    2008年05月02日04:00 カテゴリLightweight Languages Unicode - 似た文字同士にご用心 後者はハイフンでなくてマイナス記号でんがな。 [を] UTF-8 の全角ハイフンが Perl の正規表現にマッチしなくて悩んだ で、元のテキストファイルの全角ハイフンを「od -t x1」 で見てみると「ef bc 8d」と「e2 88 92」の2種類が混じっていました。 前者は「\p{Hyphen}」にマッチするのですが後者はダメ。 まあ原因は分かったので、前処理でバイナリ置換して解決しました。 で、紛らわしそうなのを名前のHYPHENとMINUS SIGNでgrepするとこんな感じになる。 egrep '(HYPHEN|MINUS SIGN)' /usr/local/lib/perl5/5.10.0/unicore/Name.pl -002DHYPHEN-MI

    Unicode - 似た文字同士にご用心 : 404 Blog Not Found
  • 小飼弾のフェイントテクニック - ひがやすを技術ブログ

    ボクシングの内藤選手は、フェイントの達人です。ここにパンチを打ち込むぞーと目線を合わせているのと、まったく違う部分にパンチを打ち込むことができるのです。これは、超高度なテクニックで、達人にしかできないそうです。 弾さんのつっこみも、おんなじ感じですよね。何かを引用しつつ、別の部分を掘り下げるっていう。今日、やっとこれは、内藤選手のフェイントと同じなんだと気づきました(笑)。 例えば、「誰が書いても同じコード」は大事なことなのかの私のエントリ。これに対して「同じコード」の同じって何さとふって、TAPをすすめるって言うフェイント。 ついに永和の秘密を公開 - 受託開発の極意のエントリに関しても、極意より作品を - 書評 - 受託開発の極意での中身より「何を作ったか」を焦点にするフェイント。 フェイント後の話が面白いから成り立つテクニックだと思うんですが、最初やられたときは、面らいました。

    小飼弾のフェイントテクニック - ひがやすを技術ブログ
  • 404 Blog Not Found:perl - ワンライナーの書き方入門

    2008年03月30日19:45 カテゴリLightweight Languages一日一行野郎 perl - ワンライナーの書き方入門 まあ、ruby のコマンドラインオプションって、Perl由来ですから。 Rubyでワンライナーを書く方法のまとめ まぁ、Perlもあるしあんまり需要が無いのかも知れませんが。 というわけで、Rubyistにも役立つPerlのワンライナー入門です。 基中の基 コマンドとしてのperlは、スイッチがない場合、引数はスクリプト名として扱われます。 % cat hello.pl print "Hello, world!\n"; % perl hello.pl Hello, world! % コマンドライン中の文字列をスクリプトとして解釈させるには、-eを使います。 % perl -e 'print "Hello, World!\n"' Hello, worl

    404 Blog Not Found:perl - ワンライナーの書き方入門
  • javascript - 弾もcurryを煮込んでみた : 404 Blog Not Found

    2008年02月14日21:00 カテゴリLightweight Languages javascript - 弾もcurryを煮込んでみた 以下を見て私も作りたくなったので。 JavaScript でカリー化、再び: Days on the Moon で、出来上がったのがこちら。 var curry = function(f){ var fs = f.toString(); var op = fs.indexOf('('); var cp = fs.indexOf(')'); var ob = fs.indexOf('{'); var cb = fs.lastIndexOf('}'); var args = fs.substr(op+1,cp-op-1).split(/,\s*/); if (!args.length) return f; // 具がないのはそのまま返す var curr

    javascript - 弾もcurryを煮込んでみた : 404 Blog Not Found
  • regexp - 全角英数字を半角に : 404 Blog Not Found

    2008年01月14日03:30 カテゴリLightweight Languages regexp - 全角英数字を半角に きっかけは、はてなハイク。 自分と根的にあわない人 - fmht7 - はてなハイク PCで英数字をダブルバイトで入力する人 禿同、しかし人を憎みたくなかったので。 Perlではお茶の子さいさい。 perl - dankogai - はてなハイク perl -CIO -ple 'tr/\x{FF01}-\x{FF5e}/\x21-\x7e/' は脊髄でひねり出せた。 どうせならJavaScriptでもやってみよう、ということでひねり出したのがこちら。 !釤#$%&釻()*+,−./ 0123456789:;<=>?@ ABCDEFGHIJKLMNOPQRSTUVWXYZ [\]^_` abcdefghijklmnopqrstuvwxyz {|}〜 var fasci

    regexp - 全角英数字を半角に : 404 Blog Not Found
  • javascript - \uXXXXを使わない理由 : 404 Blog Not Found

    2008年01月14日14:30 カテゴリLightweight Languages javascript - \uXXXXを使わない理由 そんなことは、ない。 JavaScriptには\uXXXXがあるんですよ[文系大学的IT系の悲哀] dankogaiさんはあまりJavaScriptのリテラルに詳しくないのかな? \uXXXXを使わないのは、訳がある。 理由は、こちら。 404 Blog Not Found:javascript - encodeURIUnicode()と%uXXXX問題 ただし、この「ほぼ」という奴がくせ者で、現状JavaScriptでは、BMPより上の文字はJavaと同じくSurrogate Pairで表現する。例えば「𪚲」(U+2A6B2)は、実体参照では𪚲なのだが、"𪚲".lengthは2であり、escape表現だと%uD869%uDEB2となる。 これが

    javascript - \uXXXXを使わない理由 : 404 Blog Not Found
  • 最速インターフェース研究会 :: JavaScriptにおけるdeep clone

    http://blog.livedoor.jp/dankogai/archives/50957890.html まず、Object.prototypeにメソッドを生やしてしまうとfor inでキーを列挙するときにいちいちhasOwnPropertyを使わないといけなくなるので普通は使いません。影響が大きすぎるので、よっぽど変態的なライブラリじゃないと使わない。他のライブラリと組み合わせるとほぼ確実に問題が起きる。それから、deep_cloneが欲しい場合はJSONを作ってevalすればよい。パフォーマンスを気にする場合とか、浅いコピーが必要な場合はそれなりに工夫する必要があるけど。 で、JSONにするのにFirefoxだとtoSourceというのが使える。unevalというラッパーがあって、これだとnullでも平気。 http://subtech.g.hatena.ne.jp/cho45/

  • プリミティブ値でもプロトタイプ的継承: Days on the Moon

    書き上げた後に元記事の続きが出ているのに気づいたが、方向性が違うようなのでそのまま掲載。 404 Blog Not Found:javascript - プロトタイプ的継承 (元記事: Prototypal Inheritance) より。継承という言葉は意味が広いので、この操作に対してはチャイルドの作成といったほうが個人的にはわかりやすい。 さて、元記事で紹介されているコードではプリミティブ値からのチャイルドの作成 (継承) ができなかった。これはなぜかといえば、オブジェクト作成の際、プリミティブ値をプロトタイプ ([[Prototype]] 内部プロパティ、__proto__ プロパティ) に設定することはできないからである。 そこで、プリミティブ値が渡された場合は、それをラッパオブジェクトに変換することにする。といっても場合分けの必要はない。Object 関数を使えば、プリミティブ値

    IMAKADO
    IMAKADO 2008/01/28
    プリミティブにも対応 __proto__ 解説有り
  • 404 Blog Not Found:perl - 勝手に添削 - 40行で作るPerl用テンプレートエンジン

    2007年10月30日20:00 カテゴリLightweight Languages perl - 勝手に添削 - 40行で作るPerl用テンプレートエンジン 久々の勝手に添削。今回はこちら。 40行で作るPerl用テンプレートエンジン 正規表現がらみなので、Perl以外でも有用。 添削箇所は、こちら。 40行で作るPerl用テンプレートエンジン sub convert { return unless defined(my $str = shift); $str =~ s{&amp;}{&amp;}gso; $str =~ s{<}{&lt;}gso; $str =~ s{>}{&gt;}gso; $str =~ s{\"}{&quot;}gso; $str; } これの最初のsubstitutionが&amp;ではなくて&ではないかというのはさておき、こういった場合、何度も正規表現をかけ

    404 Blog Not Found:perl - 勝手に添削 - 40行で作るPerl用テンプレートエンジン
  • Regexp - Regexp::Commonを引くAPI : 404 Blog Not Found

    2007年10月17日17:00 カテゴリLightweight Languages Regexp - Regexp::Commonを引くAPI Mastering Regular Expression Jeffrey Friedl [邦訳: 詳説 正規表現] そういうことを防ぐにはどうしたらよいか、と考えて作りました。 秋元@サイボウズラボ・プログラマー・ブログ: phpspotの人は正規表現について語らないほうがいいのでは この人、以前にも正規表現のいいかげんな記事を書いていろいろ突っ込まれている。まずは実例から。 Server Source 何をしているかというと、Regexp::CommonをJSONPで引いているのです。このRegexp::Commonは、実際に使用され配布されている正規表現集としては最も実績のあるものの一つですが、そのままではPerlでしか使えないのでこうしてみ

    Regexp - Regexp::Commonを引くAPI : 404 Blog Not Found
    IMAKADO
    IMAKADO 2007/10/17
    regexp:;common
  • 弾にも衣装? : 404 Blog Not Found

    2007年09月24日11:17 カテゴリMoblog 弾にも衣装? 妹の再婚式にて。 「Moblog」カテゴリの最新記事

    弾にも衣装? : 404 Blog Not Found
    IMAKADO
    IMAKADO 2007/09/26
    美味しんぼにでてましたよね? <コメント