タグ

perlに関するnitsujiのブックマーク (362)

  • 第15回 DateTime:APIの標準化をめざして | gihyo.jp

    Cから継承したAPI プログラマにとって、ログの解析や作成などに含まれる日付や時刻の操作は切っても切り離せない分野のひとつです。もちろんPerlにも日付や時刻を操作するための関数は組み込まれています。 ただし、Cから継承してきたlocaltime()やgmtime()の返り値は、お世辞にもわかりやすいとはいえません。リストコンテキストで呼び出せば年月日、時分秒などの値を取り出せるとはいえ、単一の配列で受け取ると、個々の要素を使うときに直感的ではなくなりますし、明示的な名前をつけたスカラー変数を並べて受け取るのはいかにも冗長です。 use strict; use warnings; # 短いけれど非直感的 my @tm = localtime(); $tm[5] += 1900; $tm[4]++; printf "%04d-%02d-%02d %02d:%02d:%02d\n", reve

    第15回 DateTime:APIの標準化をめざして | gihyo.jp
    nitsuji
    nitsuji 2009/09/08
  • PSGI updates: Specs and more reference implementations

    bulknews.typepad.com Tatsuhiko Miyagawa's blog to discuss mostly tech and nerdy stuff. tokuhirom and I have been hacking on reference implementations and test suite for implementors. We added Mojo and AnyEvent based implementations to see how the Input and Error stream and response body API work with asynchronous callback based implementations (Note that these .txt files are notes for discussions,

  • PSGI - Perl WSGI

    bulknews.typepad.com Tatsuhiko Miyagawa's blog to discuss mostly tech and nerdy stuff. Info: if you come from Google and want to know what PSGI and Plack are: take a look at our PSGI/Plack project web page that has links to PSGI spec and FAQ, and then Plack git repo for the actual code. HTTP::Engine is the best thing that happened in the Perl web application development land lately. It's a port of

  • perlfaq8 - System Interaction - Perldoc Browser

    CONTENTS NAME VERSION DESCRIPTION How do I find out which operating system I'm running under? How come exec() doesn't return? How do I do fancy stuff with the keyboard/screen/mouse? How do I print something out in color? How do I read just one key without waiting for a return key? How do I check whether input is ready on the keyboard? How do I clear the screen? How do I get the screen size? How do

    nitsuji
    nitsuji 2009/08/11
    パスワードのプロンプトを出して入力してもらう方法
  • Perl 6、2010年4月登場 | エンタープライズ | マイコミジャーナル

    When you need perl, think perl.org Journal of pmichaud (6013)においてPatrick Michaud氏が、Perl 6のリリース時期について言及している。Patrick Michaud氏はPerl 6の設計と実装に関してリリースマネージャに近い立場にある。氏は2010年4月を目処にPerl 6の実装を公開したいと説明している。 Perl 6のリリース時期を明示的に示したのには大きくみて2つの理由がある。ひとつは、「いつPerl 6がリリースされるのか」という、これまで繰り返しおこなわれてきた質問に対して明示的な回答を示しその煩わしさを解決するということ。もうひとつはPerl 6の公開時期を示すことで、Perl 6を使ってみたいと考えている開発者へ意思表示をしておくことにある。 2010年4月に公開が予定されているバージョンは、Pe

    nitsuji
    nitsuji 2009/08/11
  • 開発コアメンバが語るRubyの今とこれから(前編) - @IT

    Ruby 1.9は移行準備オッケー @IT yuguiさんは、2009年2月のDeveloper's Summitの講演で、そろそろRuby 1.8系から1.9系への移行を始めるべきだと主張されてましたね。 園田裕貴氏。裕貴のピンイン表記である「yugui」のハンドル名で知られている。Ruby 1.9系統リリースマネージャで、Rubyコミッタ。1981年生まれ。著書に『初めてのRuby』(オライリージャパン)がある。最近はRailsアプリケーションをよく書いているという yugui ええ、一般のRubyユーザーはRuby 1.9への乗り換えは慎重にという立場の人もいますけど、私はそろそろ移行を考える時期だと思います。 @IT もう1.9に移行してもオッケーだと。 yugui もう根的な仕様が変わることはないという意味でオッケーです。2007年12月に出た1.9.0は、仕様が煮詰まっていな

  • unknownplace.org - 2009/07/10 - AnyEventの良いところを3行で

    教えて!と言われたのでそのとき答えた物をここにも記す。 POE みたいにきもくないDanga::Socket とかだと自分で実装しないといけないread queueとかそういうのも面倒見てくれる便利モジュールがある>AnyEvent::Handleドキュメントがアツイ 最後のは主に AnyEvent::Intro のことを言ってますが、これ一通り読めばとりあえず AnyEvent 使えるようになるっていうくらい完璧な内容となっています。 AnyEventとは何かからはじまり、非同期プログラミングの説明からAnyEventを使用したシンプルな例が続き、AnyEvent::Socket や AnyEvent::Handle を使用するのを順々に詳しく説明してくれています。 どうして AnyEvent::Handle みたいな物を使うといいのかというところまで書かれているので、非同期プログラミン

    nitsuji
    nitsuji 2009/07/17
  • Multi-threaded perl vs. Single-threaded perl - Islands in the byte stream (legacy)

    perl5 ithread についての個人的な見解。そして Coro について。(tokuhirom)より ithreads を有効にしてコンパイルするだけで perl インタープリタの速度が低下する[要出典] これをちょうど試そうと思っていたところなのだった。ナイスタイミング。 結論からいえば,シングルスレッドなperlはマルチスレッドなperlよりロード時間・実行時間共に10%ほど高速である。 以下詳細を記す。 まず,perlバイナリを2つ用意する。バージョンはパッチなしの5.10.0で,ビルド/実行環境はLinux 2.6.18-92.el5pae, gcc 4.3.2 20081007 (Red Hat 4.3.2-7)である。 sperl (single-threaded perl): $ ./Configure -des -Doptimize=-O3 -Dprefix=~/sp

    Multi-threaded perl vs. Single-threaded perl - Islands in the byte stream (legacy)
    nitsuji
    nitsuji 2009/06/29
  • YappoLogs: Data::Model っていう ORM みたいの CPAN にあげたよ

    Data::Model っていう ORM みたいの CPAN にあげたよ あざーす。循環参照しすぎるとバターになる。。なんでそんなに人の目を気にするのだろうと、マジレス。 早速ですが Data::Model っていう O/Rマッパー 的な物を CPAN にあげました。 Data::Model http://github.com/yappo/p5-Data-Model/tree/master 元来は MVC モデルで言う所の Model を一括でまかなえるつもりで実装していますが、ロジック処理は普通の Perl のクラスで書いちゃった方が潰しが聞くため、主にストレージを Perl のオブジェクトにマッピングする ORM 的な使い方が主流となっています。 そして、 Data::Model の多くの実装や設計などは Data::ObjectDriver を参考にして開発しました。 他にも後述して

  • PerlとRubyで省メモリなハッシュを使おう - mixi engineer blog

    サボっていた早朝ジョギング@駒沢公園を再開して2週間たち、やっと抜かれる数より抜く数の方が増えてきたmikioです。今回は、PerlRubyのハッシュの代用としてTokyo Cabinetを使うことでメモリ使用量を激減させられることを説明します。 抽象データベースAPI Tokyo Cabinetには抽象データベースという機構があり、先日、そのPerlRubyのバインディングをリリースしました。それを使うと、各種言語のハッシュとほぼ同じような共通したインターフェイスで、以下のデータ構造を利用することができます。 オンメモリハッシュ:各種言語に標準のハッシュと同じく、メモリ上でkey/valueの関係を表現する。 オンメモリツリー:メモリ上の二分探索木としてkey/valueの関係を表現する。 ファイルハッシュ:いわゆるDBMとして、ファイル上でkey/valueの関係を表現する。 ファ

    PerlとRubyで省メモリなハッシュを使おう - mixi engineer blog
    nitsuji
    nitsuji 2009/04/22
  • Good Evils In Perl

    Perl provides many powerful features and modules that allow developers to customize and extend the language. Some popular modules include Moose for object-oriented programming, TryCatch for exception handling inspired by Perl 6, and P5.10 features that backport Perl 6 functionality. While useful, some features like autoboxing and state variables could introduce subtle bugs if misused. Overall, Per

    Good Evils In Perl
    nitsuji
    nitsuji 2009/04/20
  • 第4回 Any::Moose:なにがどうでもムースはムース | gihyo.jp

    CPANTSは情報の宝庫 Perlを使う最大の利点といわれるCPANですが、CPANは単なるモジュール置き場ではありません。CPANはまたPerlの利用状況を知るうえで不可欠な統計情報を得る場でもあります。そのような統計情報のいくつかは、いわゆるCPAN検索サイトからも確認できますが、より突っ込んだ情報が欲しい場合はCPANTS(CPAN Testing Service)と呼ばれるサイトを確認するのが便利です。 国内ではnipotanこと谷口公一氏が始めた「輝け!全日最強 CPAN Author 決定選手権」のネタ元として知られていますが、このサイトでは個々の作者やモジュールの品質だけでなく、そのモジュールが実際にどこで使われているかという情報を得ることもできます。 たとえば前回取り上げたロール関連のモジュールの利用状況を調べてみると、古き良きExporterを依存モジュールとして取り上

    第4回 Any::Moose:なにがどうでもムースはムース | gihyo.jp
    nitsuji
    nitsuji 2009/04/06
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • 参加者の成長を見守る、Shibuya.pm 2代目リーダー - @IT自分戦略研究所

    第8回 参加者の成長を見守る、Shibuya.pm 2代目リーダー 長谷川玲奈(@IT自分戦略研究所) 大星直輝(撮影) 2009/3/23 竹迫良範(たけさこよしのり) Shibuya.pm リーダー 1977年3月2日、広島県出身。サイボウズ・ラボ所属。2002年、広島市立大学 情報科学部 知能ロボット講座卒業。在学中の1998年より、コンピュータメーカー子会社にてECサイトの開発に携わる。2001年にはNamazu Projectに参加。Shibuya Perl Mongers(Shibuya.pm)には2003年のスタートアップセミナーから参加し、2006年に2代目リーダーに就任。 ■「バソキヤ2006」でShibuya.pmの新リーダー誕生 Shibuya.pmのリーダーになったのは2006年です。宮川さん(シックス・アパート 宮川達彦氏、Shibuya.pm 初代リーダー)が渡

  • Kansai.pmでコルーチンについて発表してきた - はこべにっき ♨

    Kansai.pm#11にて「Perlで学ぶコルーチン」という発表をしてきました. だいぶ前のRuby勉強会でRuby 1.9のFiberをみてPerlでもいろいろやってみていたので,その時しらべたことを中心にぐだぐだとしゃべりました. Perlで学ぶコルーチンView more presentations from hakobe. コルーンは継続や並行処理などいろいろな概念がからんでいて調査がたいへんでした.PerlでのCoroの実装がどうなっているのかもう少し詳細に調査/発表できたらよかったです. スライドにも書いてますが,Ruby 1.9のFiberとまったく同じインターフェースをもったFiber.pmをつくってみました.githubで 公開しています. http://github.com/hakobe/perl-fiber/tree 以下のように簡単にFiber(=コルーチン)をつ

    Kansai.pmでコルーチンについて発表してきた - はこべにっき ♨
    nitsuji
    nitsuji 2009/03/23
  • 第2回 mro:次のメソッドはどこ? | gihyo.jp

    モダンなクラス/オブジェクトのあり方は? Perlではそもそもオブジェクトという考え方自体が、Perl 5(Perl 7歳)ではじめて登場した、後付けのものでした。また、その実装も非常におおらかなものだったため、より「格的な」オブジェクト機構を備えた言語のユーザからはしばしば批判されてきました。 ただし、転んでもただでは起きないのがPerlハッカーたちのよいところ。そのような批判を糧に、「⁠モダンPerl」の世界でもっとも激しく、多様に進化してきたのがこの分野です。 今回はそのようなクラス/オブジェクトの進化の一例として、クラスの継承とメソッドの解決順序にまつわる話題をまとめていきます。 継承によるクラスの拡張 伝統的なbaseプラグマを使ってクラスを拡張する場合、継承元と継承先に同名のメソッドがあれば継承先のメソッドだけが優先的に実行されます。 use strict; use warn

    第2回 mro:次のメソッドはどこ? | gihyo.jp
  • マスタリングPerl

    書は、Perl構文の基を指南する『初めてのPerl』、再利用可能なPerlソフトウェアを作成する方法を教える『続・初めてのPerl』に次ぐ3番目の書籍として位置付けられるものです。このシリーズ完結編の役割を担っていて、Perlを意のままに自由に操るための方法を伝授します。優れた技を集めたトリック集ではなく、Perlプログラミングについての考え方を説いています。つまりプログラマが日々直面するデバッギング、メンテナンス、設定といった現実の問題を扱えるようになるための解説書なのです。Perlマスタになるために、もしくは解決策を見つけ出す方法を知る、あるいは問題を発見する方法を知る先達(案内人)になるために読むべき書物でしょう。 まえがき はじめに 1章 Perlマスタになる 1.1 Perlマスタになるとはどういうことを意味するのか 1.2 書の対象読者 1.3 書の読み方 1.4 

    マスタリングPerl
    nitsuji
    nitsuji 2009/03/04
    これは買う
  • NYTProf screencast from the 2008 London Perl Workshop

    I’ve uploaded the screencast of my NYTProf talk at the London Perl Workshop in November 2008. It’s based on a not-quite-2.08 version and includes some coverage of an early draft of the ‘timings per rolled-up package name’ feature I discussed previously. It also shows how and why anonymous subroutines, defined at the same line of different executions of the same string eval, get ‘merged’. The demos

    NYTProf screencast from the 2008 London Perl Workshop
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
    nitsuji
    nitsuji 2009/02/23
  • 第1回 「モダンPerl」ってなんだろう? | gihyo.jp

    「モダンPerl」という言葉の流行 先日、国内有数のPerlハッカーである牧大輔氏が『モダンPerl入門』という書籍を刊行しました。 日Perlユーザーのハブサイトを目指しているperl-users.jpでも「モダンなPerl入門」と題して「古来から親しまれているPerl入門とはひと味違う、今風のPerl入門テキスト」を作ろうという動きがあります。 海の向こうでは、Perl 6の言語仕様の策定にたずさわっているクロマティック(chromatic)氏が「Modern Perl Books」というウェブサイトを開設して、「⁠モダンPerl」についての考察を始めました。氏はその名もModern::Perlというモジュール[1]を公開して「モダンPerl」の啓蒙に努めています。 個人の主義主張に過ぎないのでしょうか? でも、この「モダンPerl」とはいったい何なのでしょうか。 字面から「今風の

    第1回 「モダンPerl」ってなんだろう? | gihyo.jp
    nitsuji
    nitsuji 2009/02/23