タグ

xsに関するkiririmodeのブックマーク (15)

  • 第16回 Perl内部構造の深遠に迫る(1) | gihyo.jp

    連載では第一線のPerlハッカーが回替わりで執筆していきます。今回はgfxこと藤吾郎さんで、テーマはPerlの内部構造です。 内部構造を覗く Perlで開発をしていると、ときどきわかりにくい現象に遭遇することがあります。たとえば、あるデータをJSON(JavaScript Object Notation)にシリアライズするとき、数値としてシリアライズしてほしい値が文字列としてシリアライズされてしまう。あるいは、エンコーディングが正しいはずなのに文字化けが起きる。こんなときは、思いきってPerlの内部構造を覗くことで、何が起きているかを突き止めることができます。 稿では、Perlの内部構造について解説します。言及するperlはバージョン5.16.0(2012年5月21日リリース)です。また、ターミナルのエンコーディングはUTF-8を想定しています。なお、Perl処理系はC言語で書かれてい

    第16回 Perl内部構造の深遠に迫る(1) | gihyo.jp
  • Xcode4でCPANモジュールがコンパイルできない問題の解決方法

    MacBook Airの11インチを遅ればせながら購入したclouderです、こんにちは。 購入したその日にさっそく開発環境を整えようとXcode4を入れて、iPhoneアプリ開発を...と思いきや、Perlの開発を始めたんですが、いくつかのCPANモジュールがインストール(コンパイル)できないのに気付きました。 コンパイル時のエラーは以下のようなもの。 lipo: can't open input file: /var/tmp/hoge.out (No such file or directory) どうやらXSなどのコンパイルが必要なモジュールでこの現象がおこっているようです。いろいろ調べてみたら、コンパイルオプションに「-arch ppc」があるのにppcのアーキテクチャのファイルが適切な場所にないからエラってしまうようです。 なんでだよーと思いつつ、Xcode4のREADMEを見た

  • Kazuho@Cybozu Labs: Writing a Fast and Secure HTTP Parser (in the case of HTTP::Parser::XS)

    In May, I had a chance to give a talk at Tsukuba.xs Beer Talks #1.  I forgot to upload the slide since then, but finally, here it comes :-p The slide titled "HTTP::Parser::XS - writing a fast & secure XS module" covers the design and implementation of HTTP::Parser::XS: an XS HTTP Parser that is used by a number of Plack-compatible web servers, and picohttpparser: its underlying HTTP parser written

  • XS基礎文法最速マスター - Islands in the byte stream (legacy)

    元ネタ:Perl基礎文法最速マスター(id:perlcodesample) XSを始めるための手順といくつかの要素の解説です。C言語をある程度知っている人でも,これを読んだだけでXSの基礎をマスターしてXSを書くことができるようにはなっていません。リファレンスでもありません。 XSとは,狭義ではPerlでエクステンションを書くためのマクロ言語の名前ですが,広義ではエクステンションを書くための技術の総称です。ここでは,広義のXSを俯瞰します。 XSはいろいろと特殊なのでテンプレは無視で行きます。 目次: h2xsで空のディストリビューションを作る XSファイルの構成 スレッドコンテキスト SVファミリ GCとスコープ さらなる学習のために h2xsで空のディストリビューションを作る 以下のコマンドで空のXSディストリビューションを作ることができます。 h2xs -A -b 5.8.1 -n

    XS基礎文法最速マスター - Islands in the byte stream (legacy)
  • おさかなラボ - [XS]いよいよMySQLからデータを取り出してハッシュ/配列にぶちこむ

    第5回目です。今回はいよいよキモのMySQLからデータを取り出し、ハッシュリファレンスの配列、のリファレンスにするところです。この手法は良く使うと思います。userとnameからなるテーブルがあったとすると、リザルトセットを次のように変換することで、データをレコードごとにループで処理できるので便利ですよね。今回はこの部分をやります。 [ { user => 1, name='canada' }, { user => 2, name ='osakana' }, { user => 3, name ='lab' }, ] さて、前回反応が悪かったので自分で読み返してみたら読みにくいことこの上なかったので猛省してます。ちょっと例題が悪かったなあ。XSのチュートリアルを書いてるのにmysqlAPIの話に終始するとは……。今回はこのコードの部分です。動作するコード全体は「ここ(MyQue

  • おさかなラボ - PerlでXSを使ってみよう

    と思う人は多いと思う。気になっている人は多いだろう。しかし、XSに関する詳細なドキュメントは、ググってみると驚愕するくらい少ない。そして読みにくい。理由は後述する。 私もXSに関するドキュメントを書きたいのだが、カバーする範囲が広大すぎてどこから手を付けたらいいのか全く分からない。が書けそうな勢いだ。エントリを分けて書くのか、既存とは別のチュートリアル文書のようなものを書くのか、悩んでいるところである。その代わり、今回はXSってえる?って人には有用なエントリにしたいと思う。そして簡単なサンプルを書いてみたいと思う。 少々のことなら分かるしググるし大丈夫だぜ!という人は、以下のエントリ、およびリンク先を参照すると良いと思う。 XS by id:naoya まずはXSって何?ってことだが、この時点で何がなんだかさっぱり分からない人が多いと思う。それもそのはず、XSという言葉が包括的

  • Perl 5 Internals - Books

    This series contains material adopted from the Netizen Perl Training Fork, by kind permission of Kirrily Robert. [edit] Preliminaries Welcome to NetThink's Perl 5 Internals training course. This is a three-hour course which provides a hands-on introduction to how the perl interpreter works internally, how to go about testing and fixing bugs in the interpreter, and what the internals are likely to

  • PerlGuts Illustrated

    PerlGuts Illustrated PerlGuts Illustrated Version 0.06 This document is meant to supplement the perlguts(1) manual page that comes with Perl. It contains commented illustrations of all (eventually?) major internal Perl data structures. Having this document handy hopefully makes reading the Perl source code easier. It might also help you interpret the Devel::Peek dumps. I'll try to expand it as I l

  • 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

  • はてなブログ | 無料ブログを作成しよう

    オーベルジーヌ実レポ べ物の鼻塩塩(未だに通じるのかな) オーベルジーヌというカレーをご存知だろうか 都内にあるデリバリー専門のカレー屋で、 ロケ弁などで大人気の格欧風カレーが楽しめるらしい いいな〜 いいな〜オブザイヤー 都内の奴らはこんな良いモンってんのか 許せねえよ………

    はてなブログ | 無料ブログを作成しよう
  • 私的 XS メモ - IT戦記

    参考にしたサイト集 perlxs - perldoc.perl.org perlxstut - perldoc.perl.org perlguts - perldoc.perl.org perlapi - perldoc.perl.org http://d.hatena.ne.jp/tokuhirom/20081209/1228829454 Perl XS メモ - typemap と MAGIC をからめて - daily dayflower http://pub.ne.jp/wakapon/?entry_id=1109553 http://pub.ne.jp/wakapon/?entry_id=1109664 準備 $ h2xs -A -n MyXSS Makefile.PL CC => 'g++', 型 SV スカラー AV 配列 HV ハッシュ CV コード GV グロブ RV リ

    私的 XS メモ - IT戦記
  • はてなブログ | 無料ブログを作成しよう

    朝4時台起きセルフメソッド 自分のため(セルフ)の朝4時台起きメソッド。 これはそういうことなんだ。。。 朝が暖かくなる5月半ばから 朝4時台に起きることを目標に試行錯誤していく。 まずは2日間だけ試した記録。 時間設定 +朝4時台とは 午前4時~午前4時40分ならOK +寝る時間 午後9…

    はてなブログ | 無料ブログを作成しよう
    kiririmode
    kiririmode 2008/12/20
    xs で C++ を使う方法
  • Perl XS メモ - typemap と MAGIC をからめて - daily dayflower

    id:tokuhirom さんが http://d.hatena.ne.jp/tokuhirom/20081209/1228829454 で下地をつくってくださったので(perl-users.jp むけまとめも期待してます),ちょっとアドバンスドな話題を。 例題 http://www.sra.co.jp/people/m-kasahr/eb/ http://www.sra.co.jp/people/m-kasahr/eb/ の Perl binding を開発するとしましょう。 http://www.sra.co.jp/people/m-kasahr/eb/ の使い方は,たとえば次のような感じです。 EB_Book *book_pointer; book_pointer = (EB_Book *) malloc(sizeof(EB_Book)); eb_initialize_book(bo

    Perl XS メモ - typemap と MAGIC をからめて - daily dayflower
  • はてなブログ | 無料ブログを作成しよう

    思いは言葉に。 はてなブログは、あなたの思いや考えを残したり、 さまざまな人が綴った多様な価値観に触れたりできる場所です。

    はてなブログ | 無料ブログを作成しよう
    kiririmode
    kiririmode 2008/12/14
    xs に関する最初の一歩的なエントリってなかなかないから,こういうの書いてもらえると良いなー!
  • Perlプログラマのためのgdb入門(at Shibuya.pm #9 LT) - とあるはてな社員の日記

    先日のShibuya.pm #9のLightening Talkで「gdbでXS on mod_perlをデバッグ」という話をしてきました。XSを使い出すと、従来のPerl的デバッグだけでは不十分なのでgdbをうまく使って、効率的にデバッグしましょう、という話です。実は、はてな社内では1年近く前に勉強で話したネタだったのですが、ようやく公開することができました。 Shibuya.pmでは5分という枠があったのでショートver.でしたが、ここでは制限はないので、来のロングバージョンの資料をアップします。ちょっと公開できない情報が混っていたので、xxxで隠していますが、ご了承ください。 ちなみに、Rubyとかでも似た感じでデバッグできると思うので、そちらの人も参考にしてください。長いよ!という人は、最後の「これは設定しておけ的gdb初期化マクロ」だけでもどうぞ。かなり便利です。 (資料公開が

    Perlプログラマのためのgdb入門(at Shibuya.pm #9 LT) - とあるはてな社員の日記
  • 1