タグ

perlに関するmollifierのブックマーク (49)

  • Perlリファクタリングツール作ってる - hitode909の日記

    こんにちは,まずはこのGIFをご覧ください. Perlのソースコードをリファクタリングするツールまともなのがないから自作することにした.perl-refactoring-toolsっていうそのままの名前. GitHub - hitode909/App-PRT: Command line tool for Perl code refactoring いろいろあってApp::PRTになった GitHub - hitode909/App-PRT: Command line tool for Perl code refactoring いまのところ,トークンの置き換えと,クラスのリネームができる. テストのカバレッジ100%で意識高い. hitode909/App-PRT | Coveralls - Test Coverage History & Statistics トークンの置き換え トークン

    Perlリファクタリングツール作ってる - hitode909の日記
  • 日本Perl改造計画 とほほの Perl編 その1 - Shohei Yoshida's Diary

    みなさんは Perlを勉強し始めた人のブログエントリーを見てこんなことを 思ったことはないでしょうか ? 「なんでこんな古臭いコードを書いているんだ」 私は結構有ります。3引数の openでなかったり、ベアワードが大量に 使われていたり、myが使われていなかったり。なんでそういうコードを 書くのかはその人達に聞いてみないとわからないですが、以下のことが 考えられます。 古い書籍を見ている 古い内容のサイトを見て書いている 1については時間が解決してくれるかもしれないですが、そのようなを すべて抹消するというのは現実的ではない。なんで 2をなんとかできないか 考えてみました。 google.co.jpで「perl」でググった結果(2011年11月11日現在) Perl - Wikipedia とほほのperl入門 The Perl Programming Language - www.pe

    日本Perl改造計画 とほほの Perl編 その1 - Shohei Yoshida's Diary
  • モダンな Perl の開発環境の構築方法 - tokuhirom's blog

    一般的な OSX 環境および Linux 環境における、モダンな Perl 開発環境の構築方法についてまとめてみたよ。 perlbrew のインストールperlbrew をつかうことにより、簡単に最新版の Perl5 を利用することができるようになる。 perlbrew をいれる。% curl -L http://xrl.us/perlbrew | perl - install % ~/perl5/perlbrew/bin/perlbrew init ~/.bashrc (または ~/.zshrc)に source ~/perl5/perlbrew/etc/bashrc を追記。あたらしいシェルをたちあげる。最新版の perl をインストールする。% perlbrew install perl-5.12.1 % perlbrew switch perl-5.12.1 ここまできたら、she

    mollifier
    mollifier 2010/07/17
    cpan, cpanm
  • Twitter ボットの作り方 Perl 編 (目次)

    一通りの連載が終了したので、最後になりますが、各エントリに簡単な説明を付けた目次を別エントリとしてあげておきます。 Twitter ボットの作り方 Perl 編 (1) ボット作成の前提となる基的な機能の動作確認を行います。この部分がうまくいかない場合、そもそもボットを作成する環境が整っていない事になるので重要です。 前書き 目標 用意するもの 方針 下準備 Twitter ボットの作り方 Perl 編 (2) 単にランダムにつぶやくだけの簡単なボットを作ります。cron に登録することで当の意味でボットとして活動可能になります。 状態ファイルの準備 データの準備 実際のスクリプト cron への登録 Twitter ボットの作り方 Perl 編 (3) Twitter 検索を組み合わせて、ボット宛のつぶやきを処理する方法を解説します。このテクニックは様々なタイプのボットで応用出来ます

    Twitter ボットの作り方 Perl 編 (目次)
    mollifier
    mollifier 2010/05/27
    bot, ボット, 作成、制作、作り方
  • 第120回 Perlらしく書くための5つの極意 - bingo_nakanishiの他言語出身者のためのPerl入門

    極意1 組み込み関数のカッコは書かない open my $file, '<', 'hoge.txt'; split //, $c; 組み込み関数と自分が作った関数を一発で見分けられるのは有意義だ。 それに、記号が多いと読み辛い! Perlが標準で持っている関数くらい覚えているぜ!! ということをアピールするくらいの勢いで、標準の関数の括弧はなしで!!!! 極意2 変数は必要になったら宣言 my $c = 1; # $cに関する処理 my $d = 10; # $dに関する処理 プログラム言語の中には、関数の先頭で変数を宣言しなければならない言語があるが、Perlはそんなことはない!!! 必要になったときに宣言するんだ!!!!!! 後で読んだときに、変数をすべて頭に入れる必要がなくなる!!!!! 極意3 つなげる my @c = 1..3; for(reverse @c){ print $_

    第120回 Perlらしく書くための5つの極意 - bingo_nakanishiの他言語出身者のためのPerl入門
  • Japan Perl Association (JPA)

    (社) Japan Perl Association Japan Perl Associationについて 一般社団法人Japan Perl Association (JPA) は Perl技術及び文化の啓蒙・促進のた めの組織です。Perl技術を利用するプロジェクト、コミュニティ、ビジネスのサポートに 取り組む事を目的とします。 理事会 Perlについて Perlは1987年に初めて発表され、以来20年以上の長きに渡って進化し続けている言語 です。インターネットの創世記にはCGIスクリプトを作成するのに多用されさらに有名に>なりました。しかしPerl自体はCGIのための言語ではありません:世界中の開発者達が自>作のライブラリを登録するCPANという巨大なライブラリネットワークを持ち、豊富なテス ト・自動化ツールを駆使して堅牢なシステム開発を可能にする、「難しい事を可能に、簡 単な事をさ

  • 第86回 スライス - bingo_nakanishiの他言語出身者のためのPerl入門

    みんな、Perlの配列の要素にアクセスするときは、 @ を $ に変えないといけないぞ!!!!! 注意! 注意! またまた注意!! my @c = ('a','b','c'); my $e = $c[0]; こうだぞぉおおおお!! となるわけなんですが........ 当? じゃあ、 @のままでアクセスするとどうなるのでしょうか? use strict; my @c = ('a', 'b', 'c'); print @c[1], "\n"; my $d = @c[2]; print $d, "\n"; 結果: b cな、な、な、なんだってぇえええええええええ!! うまくいってるんじゃないかぁああ!? と、なっちゃうわけなんですが、 これ実は「スライス」と呼ばれるもの。 スライス 例えば、ある配列があって、その配列から、添字が1の要素と2の要素だけ持った配列を作りたいとします。 すると、P

    第86回 スライス - bingo_nakanishiの他言語出身者のためのPerl入門
    mollifier
    mollifier 2009/04/04
    Perlの配列のスライス(slice)
  • 一般ユーザ環境におけるCPANモジュールの使い方 - iandeth.

    先週公開した、じゃらんWebサービスを使ったサンプルサイト「シンプル宿検索」にて、perlのソースコードも一緒に公開してみたのですが、さっそく興味を持ってくれた方から問い合わせを頂きました。 cgiを実行させようとしたら以下のエラーが出てしまいました: Can't locate Template.pm in @INC (中略) at search.cgi line 5 ... Template.pm モジュールがインストールされてないよ!って怒られています。あー、コード公開する際は必要なCPANモジュールも一緒に添付しといてあげたほうが親切なのかな?いやでもそれ面倒くさいし無理あるなあ・・・。 Webでキーワード "CPAN" を検索すると出てくるCPANの使い方系ページの多くは、そのサーバの root 権限を持っている前提で、サーバの共通ライブラリ下にCPANモジュールを追加する方法を紹

  • 新・たけぞう瀕死の日記 - ひどいCGIスクリプト

    ■ [Perl]ひどいCGIスクリプト 個人的に頼まれてネットで配られているCGIスクリプトの改造なんかをすることがあるのですが、巷でもよく言われているようにCGI系サイトで配布されているものは当にひどいコードが多いです。折角なのでこれらのひどいコードに共通する例をいくつかあげてみようと思います。 もちろんuse strict;などとは書かれていない myとか一切使わない ソースがShiftJISで書かれている モジュールは一切使っていないが(たぶん必要に迫られて)jcode.plだけは使っている Perl4で時が止まっている 関数は使っているが値は全てグローバル変数で受け渡している 以上のような理由によりmod_perlでは動きそうな気配がまったくない 変数名や関数名が無闇に短い インデントされてない(全ての行が左寄せになっている) 空白も空行も全部詰めて書く 意味もなく1行にたくさん

  • Perlの正規表現のバグ? (前編) - moriyoshiの日記

    「鬼車の[[:print:]]はPOSIX流じゃないらしい」でid:ockeghemさんやid:nihenさんと先週いろいろやりとりしてた中で、一つだけ解決していない問題があった。 utf8フラグが立っているかどうかでPOSIX文字クラスのマッチの挙動が変わるという件。 大変詳しい調査をありがとうございます。トラックバックのブログに書いたように、[:print:]の挙動は、Perlでもutf8フラグの有無でも変わってくるようです。[:print:]は実用できないなと思いました え?まじ?と思うも、一応Perlのコード例も出していたので検証しないわけにはいかない。以下のようなコードで試してみたが、utf8フラグが立っていない場合と同じ結果となり、再現しないのだ。 use encoding 'utf8'; for (split //, "\t\r\n a") { printf("%d:%d:%

    Perlの正規表現のバグ? (前編) - moriyoshiの日記
    mollifier
    mollifier 2009/03/16
    詳しすぎだろw
  • regexp - ^$でなくて\A\zを使おう : 404 Blog Not Found

    2009年03月09日00:30 カテゴリLightweight LanguagesTips regexp - ^$でなくて\A\zを使おう まずは回答から。 正規表現で「制御文字以外」のチェック - ockeghem(徳丸浩)の日記 文字エンコーディングの妥当姓 制御文字(\x00〜\x1f, \x7f)のチェック 文字列長のチェック このうち後ろ二つを正規表現として書くにはどうすればいいかを考えていました。 こういう時には、「全文字がOKならOK」と考えるのではなく、「一文字でもNGならNG」と考えると楽になります。それは「スペースと非制御文字以外」なのですから、/[^ \S]/が求めていた正規表現で、=~ではなく!~が使うべき演算子ということになります。全角スペースもOKにしたければ、/[^ \x{3000}\S]/。[追記参照] [Run via Codepad] #!perl -

    regexp - ^$でなくて\A\zを使おう : 404 Blog Not Found
    mollifier
    mollifier 2009/03/10
    "^$ではなく、\A\zと書いてmsフラグを付けよう"
  • モダンPerlの世界へようこそ 記事一覧 | gihyo.jp

    第42回Template ToolkitPerl製テンプレートエンジンのデファクトスタンダード 石垣憲一 2011-06-30

    モダンPerlの世界へようこそ 記事一覧 | gihyo.jp
  • Perlはもう終り? | | プログラマ2.0日報 | あすなろBLOG

    というのはですね、私が使ってるサーバで事故があって、いろいろとサイトを再構築していたのですが、私のことですから、自分が Perl で書いた古い CGI が大量にあって.... というわけで、完全復旧なんてできないかも?ともなってます。で、古いCGIを復旧するためには、当然、CPAN からライブラリを取ってきて、入れなおすことが必要になります。結構盛んにCPANライブラリを使って書いてましたからね....で、です。そこで気がつくのですが、あれ....CPAN ライブラリのバージョン更新があまり進んでない.....ということなんですね。たとえば、用途から考えて、現役でちゃんとメンテされているに決まっている XML::RSS あたりを基準に考えると、  2009年:2、2008年:8、2007年:1、2006年:4というくらいの更新があります(要するについさっきも更新があった、くらいの頻度)。そ

    mollifier
    mollifier 2009/02/19
    ワンライナーとか「より良いbash」みたいな用途では当分生き残ると思う
  • CPAN 長いネームスペース大会 : にぽたん研究所

    「FormValidator::Simple::Plugin::Japanese の依存ライブラリを減らしつつ perl5.8 的な Unicode 使用スタイルにして高速化をはかるパッチ - TokuLog 改めB日記」 あたりに関連して、某 IRC にて… 19:23 >nipotan< FormValidator::Simple::Plugin::Japanese は、 19:24 >nipotan< Number::Phone::JP フンフンまわりが重いような希ガス 19:24 >nipotan< つか、U::RD にしても、N::P::J にしても俺じゃねぇか 19:24 <hid*******> w 19:26 <Yap***> www 19:27 >nipotan< FormValidator::Simple::Plugin::Number::Phone::JP でしたっけ

    CPAN 長いネームスペース大会 : にぽたん研究所
    mollifier
    mollifier 2009/02/18
    eBay長すぎw
  • 『モダンPerl入門』感想 - Kentaro Kuribayashi's blog

    id:lestrratさん期待の新刊『モダンPerl入門』をさっそく読みました。結論からいうととてもいいで、他の言語はよく知っててイケてるコード書きまくりだけどPerlはよくわからないというひと、もっとPerlのことを知りたいひと、昔やったけど最近の事情はどうも知らないというひと、様々な方にとってマストバイな一品に仕上がっていると思いました。もちろん、僕自身にとってもいろいろ知ることが多くて、とてもためになりました。 以下、自分が実践できてるかどうかをまったく度外視して、あれこれと書いてみました(たまには書評の真似事をしてみたいブーム)。 モダンPerl入門 (CodeZine BOOKS) 作者: 牧大輔出版社/メーカー: 翔泳社発売日: 2009/02/10メディア: 大型購入: 25人 クリック: 506回この商品を含むブログ (113件) を見る よいコードとは よいコードとひ

    『モダンPerl入門』感想 - Kentaro Kuribayashi's blog
  • ビンゴ中西のほげほげ

    var c = { name : 'bingo', func : function(){ alert(this.name) } }; setTimeout(function(){c.func()}, 100); ダメな理由: function(){ alert(this.name) }だけが、setTimeoutに切り離されて渡されるため。 setTimeout(function(){ alert(this.name) }, 100); と書いたのと同じことになってしまう。 setTimeoutに引数がわたせない ダメな例:

  • blessは2引数で - Pixel Pedals of Tomakomai

    わかっててわざとやるんだったらいいんですけど、そうじゃないなら定石通りに書くべきだと思います。 5 sub new { 6 my $c = shift; 7 bless $c; 8 } 33 my $human = Human::new({'name' => 'ビンゴ', 34 'age' => 1, 35 'bag' => {} 36 }); 第31回 Perlでオブジェクト指向を書こう この書き方の問題点は二つあります。まず、コンストラクタを Human::new のように静的呼び出ししていること。もう一つが、blessを1引数で使っていることです。 確かにblessは1引数で使っても、デフォルトとして定義された時点でのパッケージへリファレンスを紐づけてくれます。ってことは、わざわざクラス名が渡るように書かない方が、冗長じゃなくていいじゃん? と思われるかもしれないですが、それはちょっ

    blessは2引数で - Pixel Pedals of Tomakomai
    mollifier
    mollifier 2009/02/07
    newの書き方
  • 第56回 クロージャの実践的使いどころ - bingo_nakanishiの他言語出身者のためのPerl入門

    あまりPerlでクロージャを使っている例をみたことがなくて(僕の勉強不足もあるだろうけど)、 友人に聞いてみたところ、 コールバックかな。 と言われたので、やってみよう。 コールバック そもそもコールバックとはなにかというと、 なにかの関数に関数を与えると、その与えた関数を呼んでくれる仕組みである。 言葉で説明すると、わかりにくいのでソースを提示する。 use strict; sub call_you { my $code = shift; print '今から君の関数を呼ぶ', "\n"; $code->(); # コールバック; print '呼び終えました', "\n"; } my $f = sub { print '!!呼んで!!', "\n"; }; call_you($f); 結果: 今から君の関数を呼ぶ !!呼んで!! 呼び終えました コールバックを使った関数 では、次のよう

    第56回 クロージャの実践的使いどころ - bingo_nakanishiの他言語出身者のためのPerl入門
    mollifier
    mollifier 2009/02/07
    Perlのクロージャー。難しい。
  • 第31回 Perlでオブジェクト指向を書こう - bingo_nakanishiの他言語出身者のためのPerl入門

    さて、オブジェクト指向のプログラムを書いてみようといったので書いてみました〜。 といってもいきなりソースを載せるのもなんなので、まずどんなプログラムを書こうとしたか。 そこからお話させていただきます。 今朝、電車に乗ると必死で、PSPをされている方がおられました(たぶんモンスターハンターだと思われる)。 ということで、なにか冒険者が冒険するようなものを作ってみたいと思います。 でも、そんな大げさなものは作れないので、たんに主人公だけを作ってみたいと思います(といってもこの主人公もできることは少ないのですが)。 主人公 まず、主人公ですから、名前を持ちましょう。そしてこの主人公には年齢の情報も持たせます。そしてこの主人公は、袋(bag)をもっており、なんでもそこに入れることができます。 主人公ができること 主人公は袋を持っていますので、何かを袋に入れることができます。 以下のようにpushメ

    第31回 Perlでオブジェクト指向を書こう - bingo_nakanishiの他言語出身者のためのPerl入門
  • 『モダンPerl入門』正誤表

    正誤情報 1.お買い上げになった書籍の刷数を選んでください。 2.間違いを探したいページ数を選んでください 刷数: >ページ数: ※「訂正」欄の刷表記は訂正予定を含みます。 ※「訂正」欄に「未対応」とあるものは、最新刷でも訂正されていない場合があります。