最近google-glogをほんのちょっといじったりして、なんとなくC++(あいかわらずCではない)がちょっとだけわかったので、今までわりと毛嫌いしていたxsに挑戦してみることにした。 基本的なことはぐぐるとそれなりにでてくるので、見よう見まねでxsなモジュールつくってみることにした。 とりあえずPurePerlだとこんなかんじ。 package Man; use strict; use feature qw(say); sub new { my($class, $name, $age) = @_; return bless { name => $name, age => $age }, ref($class) || $class; } sub get_age { my $self = shift; return $self->{age}; } sub get_name { my $sel
(追記:2009/03/25) id:tokuhirom さんからコメントを頂きました。このベンチマークは問題があるそうです。 http://d.hatena.ne.jp/higepon/20050615/1118829090#c (追記:終わり) PerlにはC言語で書かれた関数を呼び出すためにXSという仕組みが存在します。 一部CPANモジュールでも使われているためご存知の方も多いと思いますが、今回はこのXSの簡単な利用方法を紹介したいと思います。 なおXSは、はてなでも使用しています。 さてXSモジュールを使うとうれしい事は C言語で書くことにより、処理が高速になる可能性がある 既存のC言語ライブラリ資産をPerlから利用することができる Perlがあまり得意でない、メモリ内などに存在するビット単位での細かなデータ構造を、あれこれできる などが挙げられると思います。 今回は、高速化に
NAME DESCRIPTION Introduction On The Road The Anatomy of an XSUB The Argument Stack The RETVAL Variable The MODULE Keyword The PACKAGE Keyword The PREFIX Keyword The OUTPUT: Keyword The INIT: Keyword The NO_INIT Keyword Initializing Function Parameters Default Parameter Values The PREINIT: Keyword The SCOPE: Keyword The INPUT: Keyword Variable-length Parameter Lists The PPCODE: Keyword Returning U
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く