タグ

Perlに関するclairvyのブックマーク (37)

  • [メモ] Perlのクロージャ生成速度は遅くない件

    いくつかのスクリプト言語の処理系では、オブジェクトを生成して利用する場合と比較して、クロージャを生成する場合のオーバーヘッドが大きいという問題が知られています。最近、Perlでクロージャを使いたい場面に遭遇したので、ベンチマークをとってみることにしました。 結果、以下のように両者を使うアプローチで大きな速度差はないということがわかったのでメモ。 $ perl closure-vs-method.pl Rate method closure method 535/s -- -12% closure 609/s 14% -- $ cat closure-vs-method.pl use strict; use warnings; use Benchmark qw(cmpthese); my $COUNT = 1000; sub doit_closed { my $cb = shift; $cb

  • 最近の Module::Install で Travis るときの注意ポイント - unknownplace.org

    Travis は Github 連携の CI サービスで、結構前に Perl にも対応しているので最近更新したレポジトリには基的に .travis.yml を置いて便利に使わせていただいていたのですが、 いままで使っていた設定だとtravis上でうまくテストが通らなくなってしまった。 今まで使っていた方法は、まず gfx 考案の Makefile.PL をベースに Makefile.PL をこんなかんじで書く: use strict; use warnings; BEGIN { my @devmods = qw( Module::Install::AuthorTests Module::Install::ReadmeFromPod Module::Install::Repository ); my @not_available; eval qq{use inc::Module::Inst

  • Perl6のマクロ - karasuyamatenguの日記

    Perl6にはASTを操作する格的なマクロがある。それをわかりやすく解説したポスト: http://strangelyconsistent.org/blog/macros-what-are-they-really コードからASTを得る quasi { <コード> } quasiはQuineという哲学者の「quasi-quote」というコンセプトに由来している。ちなみにこれはクワイン プログラムの由来の人でもある。 マクロ宣言: macro <マクロ名> { } macro HOGE { quasi { $*ERR.say("OH HAI") } } マクロの呼び出し HOGE(); 関数のようなシンタックス。Cのようにマクロは大文字にするのが慣習のようだ。ただし… マクロへの引数はその値ではなくて、コンパイラによりコードから変換されたAST ASTをコードに埋め込む: {{{AST}}

    Perl6のマクロ - karasuyamatenguの日記
    clairvy
    clairvy 2011/10/31
    AST
  • Perlの登録商標について - Perl belongs to us : 404 Blog Not Found

    2011年09月30日17:28 カテゴリOpen SourceNews Perlの登録商標について - Perl belongs to us まずはおめでとう。 Perl Trademark In Japan | lestrrat [blogs.perl.org] We had been told that this whole process would take about a year, and finally I'm happy to announce that this decision has been reversed, and the above mentioned trademark has been revoked (I'm not a lawyer type, so excuse me if my words of choice there are not tech

    Perlの登録商標について - Perl belongs to us : 404 Blog Not Found
  • YAPC::Asia 2010 の (スライド|感想|写真) を (アップ|ブログ|シェア) したよ

    YAPC::Asia 2010の回顧録のインデックスを目指してトゥギャってみました. YAPCに行けなかった人は雰囲気を楽しんで,YAPCを知らなかった人はこんな楽しいカンファレンスがあるPerlコミュティをうらやんでくださいw 基的に #yapcasia タグから拾ってきています. なるべくご人のツイートから探すようにしましたが,途中で力尽きました… 続きを読む

    YAPC::Asia 2010 の (スライド|感想|写真) を (アップ|ブログ|シェア) したよ
  • YAPC::Asia 2010 Tokyoで発表しました - Islands in the byte stream (legacy)

    至らない点は多々ありましたが無事発表を終えることができました!ありがとうございました! How Xslate WorksView more presentations from gorof.ちょっと捕捉します。 まず会場の質疑応答から(スライドにも簡単に追記しました)。 Q. テンプレートをPerlコードに落とし込んでperlに実行させるというモデルもあると思うが、敢えて独自VMを実装した理由は? A. たしかに、Perlコードに落とし込むテンプレートエンジンはあり、Template::ToolkitText::MicroTemplateなどはそうしています。しかしPerlは汎用のインタプリタであり、テンプレートのレンダリングに特化しているわけではりません。Xslateは汎用性を犠牲にし、高速化を図っています。特に、出力バッファに対する文字列の連結に大きな差があります。なので、独自VMの

    YAPC::Asia 2010 Tokyoで発表しました - Islands in the byte stream (legacy)
    clairvy
    clairvy 2010/10/16
    YAPC::Asia 2010
  • http://atnd.org/events/6923

    http://atnd.org/events/6923
    clairvy
    clairvy 2010/08/03
    ゆる過ぎたので,今回はもうちょっとゆるくない方向で
  • http://atnd.org/events/6593

    http://atnd.org/events/6593
    clairvy
    clairvy 2010/07/18
    とりまやってみて.規模を見る流れ
  • プログラミング言語"Perl"の商標登録について - JPA 運営ブログ

    一部の方はすでにご存じの通り、先日 "RUBY"や"OPENSOURCE"などの商標登録が出されていた他、"Perl"および"パール"の商標登録がプログラミング言語Perlの開発およびコミュニティと全く関係のない法人(テラ・インターナショナル)により出願され、受理されてしまっていることが発覚いたしました。 Japan Perl Association (JPA) としては件に関して法的な対応をするかどうかを含め検討中ですが、取り急ぎ現実的にプログラミング言語「Perl」を日常的に使用されている皆様に向けて現在の状況とそれに対してどのように対応するべきかJPAとして調査した結果をお知らせいたします。 まず プログラミング言語「Perl」を自社製品、サービスに対して使用することについてはなんの問題もございませんし、それを使って作られた製品を使用・開発することに対して使用料等が発生することはあ

    プログラミング言語"Perl"の商標登録について - JPA 運営ブログ
    clairvy
    clairvy 2010/06/16
    Perl「を使用することに関しては一切の問題はございません。
  • PerlエンジニアのためのObjective-C Blocks入門 - unknownplace.org

    OS X 10.6 以降の xcode では Objective-C に Blocks というシンタックスが追加されている。 Blocks Programming Topics: Introduction Perl でいうところの無名関数(コードブロック)を作ることができる機能で、Perlでいうところの my $f = sub { ... }; $f->(); は void (^f)() = ^{ ... }; f(); のように書ける。書式がきもいのはObjective-Cの定めなのであきらめましょう。 より詳しい書式については上記ドキュメントを見ると良い。 しかしデフォルトではPerlのコードブロックとはレキシカル変数の扱いが異なる。 my $i = 0; my $f = sub { return $i + 1 }; $i++; $f->(); # 2 を返す perlではこのようにレ

  • ゆーすけべー日記

    サキとは彼女の自宅近く、湘南台駅前のスーパーマーケットで待ち合わせをした。彼女は自転車で後から追いつくと言い、僕は大きなコインパーキングへ車を停めた。煙草を一吸ってからスーパーマーケットへ向かうと、ひっきりなしに主婦的な女性かおばあちゃんが入り口を出たり入ったりしていた。時刻は午後5時になる。時計から目を上げると、待たせちゃったわねと大して悪びれてない様子でサキが手ぶらでやってきた。 お礼に料理を作るとはいえ、サキの家には材が十分足りていないらしく、こうしてスーパーマーケットに寄ることになった。サキは野菜コーナーから精肉コーナーまで、まるで優秀なカーナビに導かれるように無駄なく点検していった。欲しい材があると、2秒間程度それらを凝視し、一度手に取ったじゃがいもやら豚肉やらを迷うことなく僕が持っているカゴに放り込んだ。最後にアルコール飲料が冷やされている棚の前へ行くと、私が飲むからとチ

    ゆーすけべー日記
    clairvy
    clairvy 2010/04/22
    『AUTHORに対する「信頼」がそのうち「憧れ」に変わる時があるのです。 』ええ言葉や.
  • Perl 5は生き返った! 新たな前進を再開したPerl

    Perl 5コアの開発はここ数年、負の連鎖が続いていた。リリースは滞り、開発者は去り、将来の見通しはどんどん悪くなっていった。ここで話すのは、Perl 5の開発におけるこの悪い流れがどのようにして、楽しく、前向きで、エキサイティングなものに変わったか、というストーリーだ」 Perl 5のコアデベロッパーで、ActiveStateの技術リードでもあるJan Dubois氏は、4月13日に同社のブログにポストしたエントリ「Perl 5 is Alive」で、このように書き出しています。 Perlは、機能が高度化し複雑になったPerl 5までのバージョンを見直し、新たに作り直そうと、2000年にPerl 6の開発が始まりました。しかしPerl 6は10年たったいまでもリリースされておらず(今月に最初のバージョンがリリースされるといわれていましたが…)、一方でPerl 6の開発が始まってからは、

    Perl 5は生き返った! 新たな前進を再開したPerl
  • ハッカー (mark-wada blog)

    ハッカーというと、サイバー攻撃をする人みたいに思う人もいるかもしれないが、そういう人はクラッカーと言って区別する。そうではなくて、スーパープログラマーのことである。ギークと言うこともある。 先日、そんな人のすごさを目の当たりにした。いま、「Kailas」のブラッシュアップで牧大輔さんというハッカーと一緒に仕事を始めた。牧さんは、Perl技術の普及を行うJPA(Japan Perl Association)という団体の代表理事をつとめ、またendeworksという自分の会社を経営している人でまだ若いのにしっかりしています。 それで、このあいだうちの社長と一緒に渋谷の牧さんの会社にお邪魔して、現状のKailasのコードを見てもらったので、そのレビューと今後の進め方みたいなことで打ち合わせを行ったのだが、びっくり仰天した。 何が驚いたかと言うと、こちらの仕様とか要望を口でしゃべっていると、すぐそ

  • Jaiku | #FukuokaPM: さて、Fukuoka.pmを立ち上げるにはどうすれば良いか調べてみよう。

    clairvy
    clairvy 2010/03/10
  • Okinawa Perl Mongers 運営事務局ブログ

    clairvy
    clairvy 2010/03/10
    沖縄に行きたいなぁ.
  • Faster.pm の最適化 - tokuhirom's blog

    Faster.pm がやってることは、基的には Perl VM がやってる処理を C のコードにかきくだしただけなのです。生成されてる C のコードは以下のようなかんじだ。 ここからさらに最適化できれば、ぐっと速くできるのだけど。 #define PERL_NO_GET_CONTEXT #define PERL_CORE #include <assert.h> #include "EXTERN.h" #include "perl.h" #include "XSUB.h" #if 1 # define faster_PUSHMARK_PREALLOC(count) while (PL_markstack_ptr + (count) >= PL_ markstack_max) markstack_grow () # define faster_PUSHMARK(p) *++PL_markst

  • StackStockBooksのエクスポートしたCSVをPerl使って読書メーターにインポートする - As a Futurist...

    読書メーターはインポート機能が無いので他の蔵書管理から移るのが めんどくさいのですが,Perl の WWW::Mechanize 使ってさくっとやる方法. Perl 分かんない人は下手に手を出すと読書メーターがひどいことになるので注意 w Perl 分かる人は適当に加工して使うといいんじゃないでしょうか. できあがった読書メーターはこちら.reverse 入れ忘れたので読み終えた以外, 逆順だけど,まぁどうでもいいや. 読書メーター – riywo さんの読書メーター SSBCSV モジュール まずは StackStockBooks のエクスポート機能で CSV ファイルを書き出します. このファイルには ISBN とか書名とかいろんな情報が入ってますが,基的に 使うのは「ISBN」「状態」「日付」で良いと判断しています. あとは Perl で読み込みます.Text::CSV::Sim

    StackStockBooksのエクスポートしたCSVをPerl使って読書メーターにインポートする - As a Futurist...
  • Perlで始めるFacebookアプリケーション

    はじめに Facebookは米国の代表的なソーシャルネットワークサービスで、開発者向けのプラットフォームも用意されています。今回は、Facebook用のアプリケーションの作り方について簡単に解説します。 FacebookからはPHPで書かれたサンプルアプリケーションが提供されていますが、今回はPerlを利用したいと思います。 対象読者 Webアプリケーションに興味のある方。 必要な環境 Perl 5.8以上が動作する環境を推奨します。主なPerlモジュールには、以下を使用しました。 WWW::Facebook::API JSON::Any Facebook用アプリケーション作成の基礎 Facebook Developers Facebook Developersという、Facebookの開発者向けページがあります。ここでは主に3つの技術が提供されています。 Interface (API)

    Perlで始めるFacebookアプリケーション
    clairvy
    clairvy 2010/02/02
    アプリケーション
  • tokuhirom blog

    Blog Search when-present<#else>when-missing. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: ${entry.path} [in template "__entry.ftlh" at line 3, column 25] - Reached through: #include "__entry.ftlh" [in template "entry.ftlh" at

  • ゆーすけべー日記

    サキとは彼女の自宅近く、湘南台駅前のスーパーマーケットで待ち合わせをした。彼女は自転車で後から追いつくと言い、僕は大きなコインパーキングへ車を停めた。煙草を一吸ってからスーパーマーケットへ向かうと、ひっきりなしに主婦的な女性かおばあちゃんが入り口を出たり入ったりしていた。時刻は午後5時になる。時計から目を上げると、待たせちゃったわねと大して悪びれてない様子でサキが手ぶらでやってきた。 お礼に料理を作るとはいえ、サキの家には材が十分足りていないらしく、こうしてスーパーマーケットに寄ることになった。サキは野菜コーナーから精肉コーナーまで、まるで優秀なカーナビに導かれるように無駄なく点検していった。欲しい材があると、2秒間程度それらを凝視し、一度手に取ったじゃがいもやら豚肉やらを迷うことなく僕が持っているカゴに放り込んだ。最後にアルコール飲料が冷やされている棚の前へ行くと、私が飲むからとチ

    ゆーすけべー日記
    clairvy
    clairvy 2010/01/10
    ブルーレイ化記念ですね.わかります