タグ

perlに関するwindishのブックマーク (76)

  • Perl5.8.5から5.14.2にしたら文字化けした話 - Perl日記

    RHEL4のサポート期間が延長なしだと今日で最後。 Red Hat Enterprise Linux - Wikipedia 標準のPerlのバージョンは5.8.5。 というわけで先日RHEL5にすると同時に5.14.2にしてやるぜ!、と意気込んでperlbrewで入れたら(RHEL5のデフォはPerl5.8.8)、既存のシステムで文字化けした。 実際に文字化けしたのは、Encode.pmのdecode_utf8()を使用している箇所。 Perl5.8.5のEncode.pmのバージョンは2.01、Perl5.14.2の方は2.42_01だった。 めっちゃちがうな! あまり深追いしなかったけれど、2.01のPP版のdecode_utf8は以下のコードだった。 sub decode_utf8($;$) { my ($str, $check) = @_; if ($check){ return

    Perl5.8.5から5.14.2にしたら文字化けした話 - Perl日記
    windish
    windish 2015/11/26
    Encode.pmのバージョン違いがある
  • DBIx::QueryLog で DBI で実行された SQL を丸見えにする! - Articles Advent Calendar 2011 Dbix

    こんにちは、最近 PSP1000 の電池が一瞬で切れてしまってまともにゲームができない xaicron です。 さて、みなさんは DBI から吐かれた SQL をみたいなーと思うこともあるでしょう。 そんな時は、$ENV{DBI_TRACE} = 2 とかしてみると、ドバーッといっぱいデバッグログが出てきて、 その中に実際に発行された SQL がちょろっと出てたりするのでこいつを頑張ってパースすればいい感じですね! っていうのはだいぶ面倒だったりしますね。あたりまえですね。 そこで、use するだけでとりあえず全部の発行された SQL を STDERR にはいてくれるモジュールを書きました。 その名も DBIx::QueryLog です。そのままですね。 つかいかた 使い方は至極簡単で、どっかで適当に use するだけです。ほかには何もいりません。 そうすると、以下のような感じで STDE

    DBIx::QueryLog で DBI で実行された SQL を丸見えにする! - Articles Advent Calendar 2011 Dbix
    windish
    windish 2015/10/29
    これはべんり
  • perl6 の環境を手っ取り早く構築してサクッと Hello world する - その手の平は尻もつかめるさ

    記事はサクッと perl6 (rakudo) が動く環境を作って,ズバッと Hello world してみるというやつです. 早速行ってみましょう. 1. rakudobrew をインストールする rakudobrew をインストールします rakudobrew というのは perl5 で言うところの perlbrew/plenv,ruby で言うところの rvm/rbenv のようなものです. なぜこうした物を使うかというと,perl6 は開発が非常に活発な言語であるためにデイリーで変更が入っていて,直っていたり壊れていたりするためです. 2015年10月現在,perl6 をやるときは rakudo と MoarVM は HEAD を使うというのが紳士の嗜みとなっています *1. というわけで入れましょう. git clone https://github.com/tadzik/rak

    perl6 の環境を手っ取り早く構築してサクッと Hello world する - その手の平は尻もつかめるさ
  • Ukigumo入門 ― 2014年スタイル - その手の平は尻もつかめるさ

    とりあえずデモサイトを示しますので適当に見て下さい. http://ukigumo.moznion.net/ さて今回はゆるふわCIシステムであるところのUkigumoのナウいスタイルについて説明しようと思います. ここ最近ではUkigumo::AgentというAgentサーバが存在しており,これを使うとまあ便利なんですけれども,ドキュメントが少ない為か *1 あまり利用されている事例を見かけませんので,それらも踏まえて解説したい感じです. まずUkigumoとは何か CIシステム.Perl製. Perl製だが,もちろん他言語のプロジェクトでも使える. Travisのようにサービスとして提供されている感じではなく,自前でインストールして使う. 多分,感覚としてはJenkinsに近いと思うが,そこまで複雑ではなく,シンプル. 基的に,「テストの実行及びその結果の取得」と「テスト結果の保存」

    Ukigumo入門 ― 2014年スタイル - その手の平は尻もつかめるさ
    windish
    windish 2015/10/27
    Agentが登場
  • PerlのUkigumoでCIをはじめようとしてみた | hirobanex.net

    UkigumoというPerl製の継続的インテグレーション環境構築ツールをさわってみた話。継続的インテグレーションはなかなか重要だし、Ukigumoをきっかけに、継続的インテグレーションを導入するものいいかもですね。 はじめに 最近ちょっとTwitterのタイムラインでやたらとUkigumoって見かけて、このデモサーバみてたら、「あぁ、dotcloud使うなんかねー。」ぐらいに思っていたんだけど、なんかtokuhiromさんのYAPC::Asiaのプレゼンリストみてたら、# 20111015 Ukigumoっていうのがあって、「こんな発表なかったなー」とみていたら、またTwitterのタイムライン上でUkigumoと一緒に「CI」って言葉出てきて、「うーん、Ukigumoといい、CIといい何なんだー!」といろいろ調べてみようとと思ったのが、この記事を書くに至った経緯です。 そもそもCIとは

    windish
    windish 2015/10/27
    2011年の記事
  • Perlでテストがこけて泣きそうなときのTIPS

    Perl 書いてりゃ Test::More でテスト書きまくると思うのですが、Test::More っていうか、まあ別に Test::More だけがそうというわけでもないのですが、テストこけたときのケアが十分じゃないなと思うときがけっこうあります。 開発過程で書いてるコードというのは、いつもいつも確信を持って書いているわけではないわけで、それでなくてもうっかり間違うときもあり、せっかくテスト書いているのに何だかよくわからない理由でこけてパスできなくて時間を浪費してしまったりが日常になってたりしませんか? そういうのを繰り返しているとやがてテスト嫌いになりテスト書かなくなって番コードにデバッグコードが入り乱れ、リファクタもどんどん不可能になって小回り効かないままプロジェクトが失敗して彼女に振られてしまうわけですね。困ります。 note diag explain Test::More には

    Perlでテストがこけて泣きそうなときのTIPS
    windish
    windish 2015/10/07
    explain便利ですね
  • ファイルのすべてを飲み込む方法

    原稿を落としたら,すしをおごりにアメリカに行かないといけないとの噂にgkbrしているid:hakobe932です. 932は草津の932です.こんにちは. ファイルの中身をすべて読み込む処理というのは,非常によくある処理です.TIMTOWTDIが信条のPerlでは,ファイルの中身をすべて読み込む方法もたくさんあります.ここでは,どんな方法があるのか見てみましょう. 行単位で読み込む もっともシンプルなのは行入力演算子(<>)を使って行毎にデータを読み込み,それを連結する方法です. open my $fh, '<', './inputfile' or die "failed to open: $!"; my $content = ''; while (my $line = <$fh>) { $content .= $line; } print $content; もう少し工夫して後置whil

    windish
    windish 2015/09/21
    Perl6::SlurpかPath::Class
  • YAPC::Asia Tokyo 2015, Aug 20, 21, 22

    2015 8/20(木)、8/21(金)、8/22(土) 真夏に熱いカンファレンスを御届けします! 8/20 18:00~ : 前夜祭 8/21 10:00~ : Day 1 8/22 10:00~ : Day 2 世界最大のYAPCが最後の大花火をぶちあげに今年ももどってきました!YAPCはYet Another Perl Conferenceの略で、Perlに関するカンファレンス・・・いや、お祭りです!Perlだけに限らず、様々な分野のギーク達が集まり技術の話と楽しさに満ちた三日間のお祭りが開かれます。Perlに関連する事に興味がなくとも心配する必要は全くありません、YAPC::Asia Tokyo 2015は技術者であれば誰でも楽しめるカンファレンスです。 今年も様々なゲストを集めて熱いトークが交わされます。世界中のギーク達がどんな事を今を考えているのか行っているのか、是非皆様も体験

    windish
    windish 2015/08/25
    記念ぶくま
  • 【更新終了】YAPC::Asia Tokyo 2015 感想エントリまとめ | YAPC::Asia Tokyo 2015

    YAPC::Asia Tokyo 2015へのご参加ありがとうございました! "YAPC ain't over til you blog about it!" ブログを書くまでがYAPCです!ブログを書かない限り皆様のYAPCは終わらないのです...! ということで例年通りYAPC感想エントリをオフィシャルサイトに掲載させて頂きます。 以下のフォームに感想エントリURLの入力をお願いします。 YAPC::Asia Tokyo 2015 ブログ書いたよ!フォーム 最終更新日時: 9/7 08:49 【410エントリ】 Speakers | スピーカー YAPC::Asia 2015 で発表しました #yapcasia - 型の蓄音機は 1 分間に 45 回にゃあと鳴く [tech] YAPC::Asia Tokyo 2015 - 「WebAudio で入門する 信号処理」「(LT) コミュ

    windish
    windish 2015/08/24
    参加後のお楽しみページ / 登録ミスって変なタイトルになった…なおしたい…(泣)
  • YAPC::Asia TOKYO 2015のTシャツデザインを発表!! - Reactioブログ | 障害対応の救世主Reactio(リアクティオ)

    エンジニアの真夏の祭典 YAPC::Asia TOKYO2015は、いよいよ今週20日(木)から3日間の開催です! Reactioを運営しております当社ガイアックスは、実は「YAPC::Asia Tokyo 2015」のスポンサーでもあります。 そういった関係もございまして、今回そのTシャツをデザインさせて頂きました。 突然ですが、この場を借りましてYAPC::Asia TOKYO2015のTシャツデザインを発表させていただきます〜!88888888〜! ジャ〜ン!! モデル 左 : 弊社R&D技術開発部部長の肥後 右 : エンジニアの佐藤 色はチョコレート色! 前面は、2015年のYAPCロゴを中央に配置し、その下に過去9年分のロゴを配置。 最後のYAPCのTシャツらしく、歴代ロゴをデザインに取り入れています。 背面には、フィナーレであると同時に、10周年でもあるYAPCを記念し、

    YAPC::Asia TOKYO 2015のTシャツデザインを発表!! - Reactioブログ | 障害対応の救世主Reactio(リアクティオ)
    windish
    windish 2015/08/19
    おおかっこいい。やった!
  • 「Perl入学式の教科書」を公開しました! : Perl入学式 公式ブログ

    Perl入学式 公式ブログ プログラミング未経験者/Perl初心者を対象としたワークショップ『Perl入学式』のブログです。 一緒にプログラミングの楽しさを体感しましょう! みなさまこんにちは, Perl入学式校長のpapixです. いきなりですが, Perl入学式は今年で4年目となりました. ここまでの3年間, 多くの方と一緒にPerlを学ぶことができていて, とても嬉しく思っています. その中で, Perl入学式の卒業生からよく頂く意見の1つが, 「卒業後に使えるカリキュラムが欲しい」というものです. Perl入学式で扱う内容は, プログラミングを学ぶために不可欠な環境構築からスタートし, Perlという言語を通して「プログラミングに必要な考え方」を学んでいくという, まさに「基礎中の基礎」といえる内容になっています. 最終回でMojoliciousを利用したWebアプリケーションの開

    「Perl入学式の教科書」を公開しました! : Perl入学式 公式ブログ
    windish
    windish 2015/07/29
    これはすごい。
  • PerlでTDD(テスト駆動開発)するなら覚えておきたいCPANモジュール群 | hirobanex.net

    最近、久しぶりに新規コードを書いたんですが、そのテスト書く中でTest::Mock::Guardってモジュール使って便利だったんで、ここらで、動作確認テストを書く上でいいな(使ってみたいな)って思ったモジュール群やテスト関連ネタを個人的なメモとしてまとめておきたいと思います。 いいなって思うPerlの動作確認テスト系CPANモジュール群 私が実際に普段使っているものから、これいいなー使ってみたいなーと思うものまで、一覧にまとめて見ました。結構いろんなモジュール使わないと、いい具合にTDDってできないものだと思います。 入門編 モジュール名 概要 参考日語記事

    windish
    windish 2015/07/10
    便利げなのがいっぱい
  • Parallel::ForkManager - 簡単な並列処理によるforkマネージャー - perldoc.jp

    Parallel::ForkManager - A simple parallel processing fork manager Parallel::ForkManager - 簡単な並列処理によるforkマネージャー 概要¶ use Parallel::ForkManager; $pm = new Parallel::ForkManager($MAX_PROCESSES); foreach $data (@all_data) { # Forks and returns the pid for the child: my $pid = $pm->start and next; ... do some work with $data in the child process ... ... 子プロセスにより$dataに関するいくつかの処理を行う ... $pm->finish; # Ter

    windish
    windish 2015/07/08
    Perlで並列処理
  • Perl5.8 の UNICODE 対応

    perl は 5.8 から Unicode(utf-8) がサポートされました.5.6 でも Unicode に対応はしていましたが,ぜんぜん使い物にならず,ようやく 5.8 でまともに使えるようになったということです.ただせっかく使えるにもかか わらず perldoc などを見てもイマイチ使い方がわからないので,独自にまと めてみたのがこのページです. 誤った書き方や勘違いをしてい ることもあるので,形式的ですがこのページの内容は無保証です. 内容 文字コード変換 perlIO jperlからの移行 UTF-8フラグ 文字コード自動判別 Unicode Standard Unicode 正規化 その他 参考資料 文字コード変換 とりあえず perl5.8 で新しく組み込まれた機能を見るために,euc-jp から shift_jis への変換スクリプトをいくつか載せます. openを利用し

    windish
    windish 2015/07/03
    Unicodeスクリプトとかブロックとか
  • 【Perl】Data::Dumper 日本語出力方法は? utf8でスクリプト書いてます。…

    Perl】Data::Dumper 日語出力方法は? utf8でスクリプト書いてます。 Dumper出力の日語が”¥x{1234}”となってしまいます。 日語表示する方法ありますでしょうか? --------------------- use utf8; use Data::Dumper; use lib ’./lib’; use Jcode; $hash[0]{’key’}=[ ’あ’, ’い’, ’う’ ]; print Dumper($hash[0]); print jcode(Dumper($hash[0]))->sjis; binmode(STDOUT, ”:encoding(shiftjis)”); print Dumper($hash[0]); -----------------------

    windish
    windish 2015/07/02
    x{1234} みたいのを強引に日本語に直す。あくまで強引に。
  • MODULE.JP - 日本語に絡むUnicodeブロックとスクリプト(正規表現)

    といった感じ。ちなみにjava.util.regexとPerlのUnicodeブロックは接頭子Inを使うが、.NETの場合は接頭子Isを使う、という差異があります。 Unicodeスクリプトとブロックの違いがビミョーに見えるけど、ブロックがコードブロックをゴリッと指定したものに対して、スクリプトは特定言語に関係する文字の種類を直接指定するものなのでブロックよりも断定的、って感じで見れば良かなと。ちなみにUnicode関連のドキュメントによるとUnicodeプロパティとスクリプトで日語の文章を表そうとすると m/(?:(?:\p{Hiragana}|\p{Katakana}|\p{Han}|\p{Latin}|\p{Common}) (?:\p{Inherited}|\p{Me}|\p{Mn})?)+/x; こんな感じになるそうな。実際流通している文章はこれより多様なので現実とは微妙に乖離

  • VOYAGE GROUP エンジニアブログ : あなたにも今日こそPerlの文字化けが理解できるたった一つの原則

    2010年05月27日15:36 カテゴリprogramming あなたにも今日こそPerlの文字化けが理解できるたった一つの原則 こんにちは。ECナビラボの須藤(@ajiyoshi)と申します。 唐突です が、Perl(5.8以降)で文字化けに悩んだことはありませんか?私はあります。 そして、よくわからないまま"Perl 文字化け"などで検索すると、次のような単語が洪水のごとく溢れていて、なんだかよく分からなかったりしないでしょうか。 'flagged UTF8'Encode::decodeEncode::decode_utf8Encode::encodeEncode::encode_utf8'Wide character in print at hoge.pl line xx.'use utf8open my $fh, '<:encoding(utf8)', $filebinmode「

    windish
    windish 2015/05/18
    ちゃんと理解したい
  • Data::Dumper を使ってデータ構造を覗き見る - Perl - @OMAKASE

    perlでプログラムデバック時に Data::Dumper を使って変数内のデータ構造を見たいことがあると思います。 #!/usr/bin/env perl use strict; use warnings; use Data::Dumper; my $var = { array => [1,2,3], hash => { key1 => "val1", key2 => "val2" }, coderef => sub { "this is coderef"} }; print Dumper $var; 普通のarrayやhashであれば dumper メソッドを使い構造を確かめることはできますがcode reference(コードリファレンス)を見ようとすると sub { "DUMMY" } となってしまい内容が分からず枕を涙で濡らすことになってしまいます。 $VAR1 = { 'has

    windish
    windish 2015/05/07
    コードの中も見られる
  • [Perl] XML::FeedPP - RSS・RDF・Atomフィードの解析・生成・変換・結合

    Kawa.netxp [Perl] XML::FeedPP - RSS・RDF・Atomフィードの解析・生成・変換・結合 XML::FeedPP モジュールは、 RSS 2.0、RSS 1.0 (RDF)、Atom 0.3(および1.0)フィードの XML ファイルを解析・生成・変換・結合するための Perl モジュールです。 RSS ベースの1種類の共通 APIRSS・RDF・Atom の各フォーマットの処理に対応しているため、 手軽に扱えます。 フィードの読み出し・書き込みはもちろん、 RSSからRDFへ、RDFからAtomへといった各フォーマット間の相互変換も可能です。 他サイトからダウンロードした複数のファイルを結合して、 まとめて1つのファイルとして出力することもできます。 公開版アーカイブ: XML-FeedPP-0.43.tar.gz TARGZ CPAN ←通常パッケ

    windish
    windish 2015/04/15
    解説がていねいですごい
  • モジュールのバージョンを確認するときどうやってますか? - Articles Advent Calendar 2010 Casual

    もう恋なんてしないなんて、言わないよ絶対kamipoです。 ときに皆さん、Perlのモジュールのバージョンを確認するときどうしてますか? 僕はPerlをはじめた最初のころ、ずっとこうやっていました。 $ perl -MAcme::Hidek -le 'print $Acme::Hidek::VERSION' 40.0 こうやってたの、僕だけじゃないですよね!? いまでは以下のワンライナーにaliasを張っているので毎回がんばってワンライナーを打たなくてよくなりました。 $ alias pmversion='perl -le '"'"'for $module (@ARGV) { eval "use $module"; print "$module ", ${"$module\::VERSION"} || "not found" }'"'" $ pmversion Acme::Hidek Ac

    モジュールのバージョンを確認するときどうやってますか? - Articles Advent Calendar 2010 Casual
    windish
    windish 2015/04/13
    perldoc -m が一番汎用性高そうかな