2017年5月1日のブックマーク (3件)

  • PerlXS: sv_2mortal()やhv_store()のこと - EchizenBlog-Zwei

    そろそろXSをちゃんとやろうと思ったので、メモリ周辺のことが良くわからなくて放置していたsv_2mortal()やhv_store()のことについて調べた。 参考: perlguts http://www.kt.rim.or.jp/~kbk/perl5.005/perlguts.html 最初に結論を書いてしまうと [1: sv_2mortal()] - returnしない変数は常にsv_2mortal()を通す (揮発性をもたせる) - SVはreturnするときはsv_2mortal()を通してはダメ - AV, HVはreturnするときもsv_2mortal()を通す [2: newRV_inc()] - リファレンス変数(RV)を作るときはnewRV_inc()を 使い参照カウントをインクリメントしておく (newRV_noinc()はダメ) - リファレンス変数もsv_2mor

    PerlXS: sv_2mortal()やhv_store()のこと - EchizenBlog-Zwei
  • perlでhtmlのテーブルを書く話 - 合法SESおじさんがPGを目指す日記

    瀬野です。 senobro.hatenablog.com 前回こんなん書いたんですが、まあつまんないですよね。内容的に んで、今回はテーブルをPerlで書いてみようと思いました。 テーブルはエクセルの表みたいなもんです。格子状にデータが入ってるあれです。 メアド、名前、年齢順になってる配列データを元にテーブルを作ってみます。 test4-6 #! /usr/bin/env perl use strict; use warnings; #メアド、名前、年齢の配列データ my @info = ( 'seno@foo.com:Seno Foo:68', 'Gohan@hoge.com:Gohan Tabetai:24', 'Bread@fuga.com:Bread:36', ); #html化して表示 print "<html><table border=\"1\">\n"; my $num =

  • 俺メモ - Qiita

    完全に自分用のメモです。 よく忘れるけどググると時間がかかるものをここにメモします。 dieしたり、Ctrl+Cした時にスクリプトを終了させずにコンソール起動して変数確認したり、perlコードを試したりするプチテクニック デバッグしていて動作がおかしいからprintfデバッグしているとアレもコレもと出力してどんどんコードが汚くなった上に時間がどんどん過ぎて言ったり、 はたまた始めてのモジュールで動作があまり良くわからず、ドキュメント片手にトライアンドエラーしながらコードを書いては、激非効率なコーディングを強いられている時にちょっとだけ便利になるかもしれないテク テクって言っても大した事ないが、終了させずにシグナルフックしてコンソールからの入力をeval実行するようにしておくと、シグナル発生のタイミングの変数確認したり、perl実行したりすると便利かも while(1){ $SIG{'INT

    俺メモ - Qiita