タグ

perlに関するyanbeのブックマーク (36)

  • Rubyが今のPythonの地位にいない理由

    _ Rubyが今のPythonの地位にいない理由 歴史のことなんぞなんも知らんけど、「技術的には今のPythonの地位はRubyでもよかったのに、そうならなかった」のが何故か、その理由を書いてみよう。僕はRuby歴史なんて知らないし、以下の文章は全部、まるで見てきたかのように書いてますが、適当に書いたくせに何故か断言口調になっている怪文書の類いです。 https://twitter.com/mametter/status/741950239662170112 まめさんの書いた理由リストはどれも関係ない。いやカスってるけど。難しいというのも関係ない。 僕がRubyを知ったころ…最初に書いた通りRuby歴史なんて知らないので、別に早くもないわけだけど…Rubyというのは全く使われていない言語だった。どっかの好き者がPerlの替わりに単純な処理に使って、「ウフ、美しくかけた、グフッ」とかつぶ

  • Perlでテストがこけて泣きそうなときのTIPS

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

    Perlでテストがこけて泣きそうなときのTIPS
  • Time::Piece に関するとりとめのないコト - Qiita

    Time::Piece->strptime() で返されるオブジェクトは GMT Time::Piece->strptime() では1899年以前の日付は解釈できない gmtime->strftime('%Z') は,オブジェクトが GMT であるにもかかわらず,localtime のタイムゾーン名を返す (%z も同様) ⇒ 追記 そのうち治りそう (2015-04-10) Time::Piece のオブジェクトは,自身が localtime か gmtime であるかのフラグを持っている。だがタイムゾーンはもっていない。(#tzoffset は呼び出される度に算出する) Time::Piece->strptime() で返される値は GMT

    Time::Piece に関するとりとめのないコト - Qiita
    yanbe
    yanbe 2014/12/26
  • mod_perl: Server Life Cycle Handlers

    The following diagram depicts the Apache 2.0 server life cycle and highlights which handlers are available to mod_perl 2.0: Apache 2.0 starts by parsing the configuration file. After the configuration file is parsed, the PerlOpenLogsHandler handlers are executed if any. After that it's a turn of PerlPostConfigHandler handlers to be run. When the post_config phase is finished the server immediately

  • 第22回 Coroを使ったやさしいクローラの作り方(1) | gihyo.jp

    連載では第一線のPerlハッカーが回替わりで執筆していきます。今回は誌Vol.68~73まで「フロントエンドWeb戦略室」を連載していたmalaさんで、テーマはクローラの作り方です。個人用のちょっとしたダウンローダを書くときから、大規模なクローラを書く場合まで、Perlは強い味方になります。 なお稿のサンプルコードは、誌サポートサイトから入手できます。 クローラの礼儀作法 クローラ、スパイダ、bot[1]を稼働させる際は、アクセスのしかたによっては相手先のサービスに多大な負荷をかけてしまいます。節ではまず、使用言語にかかわらずクローラを書くうえで一般的に知っておくべき作法について述べます。 robots.txtによるbotの制御─⁠─ アクセスしてよいかの指示 Webサイトに置かれるrobots.txtは、botから「アクセスしてよいか」を判断するものです。アクセスする対象がht

    第22回 Coroを使ったやさしいクローラの作り方(1) | gihyo.jp
  • (R)?ex, the friendly automation framework

    > There is more than one way to manage it > Easy to learn, use and extend > It's (not) just Perl > Apache 2.0 licensed task prepare => sub { pkg 'apache2', ensure => 'latest'; service 'apache2', ensure => 'started'; }; News 2025-07-05 Rex-1.16.1 Rex-1.16.1 is now available on CPAN. It delivers bug fixes for hostgroup membership lists, executable discovery without which, and many others on BSDs and

    (R)?ex, the friendly automation framework
    yanbe
    yanbe 2014/03/22
    PerlのChefっぽいやつ
  • Perlでのメモリ開放について - skozawa's blog

    Perlで大規模な処理をしたときに、メモリに気を使わないといけないことがあって、メモリの開放について調べたときに、以下のページを見て、スコープ外れただけではメモリ開放されないことを知ったので、自分でも試してみた。 http://skitai.blog98.fc2.com/blog-entry-49.html メモリ使用量の確認には Devel::MemUsed を利用。昔はcpanにあったぽいけど、今はないようなので、https://github.com/jozef/devel-memused からcloneして使う use v5.14; use strict; use warnings; use lib glob "modules/*/lib"; use Devel::MemUsed; my $mem_used = Devel::MemUsed->new; $mem_used->rese

    Perlでのメモリ開放について - skozawa's blog
    yanbe
    yanbe 2013/12/23
    Perlでメモリリークしてるか調べる方法とメモリ解放される・されないパターンの検証
  • Very unfortunate choice of module name · Issue #5 · elastic/elasticsearch-perl

    yanbe
    yanbe 2013/10/03
    大変そう
  • Release the clients! Ruby, Python, PHP, Perl

    Today, the Elasticsearch developer team is excited to announce the release of official Elasticsearch clients for Ruby, Python, PHP and Perl, with other languages to follow in the future. All of the clients are licensed under the Apache 2 open source license. Why are we providing official clients?The Elasticsearch community has done a great job over the years of providing clients for many languages

    Release the clients! Ruby, Python, PHP, Perl
    yanbe
    yanbe 2013/09/26
    ElasticSearch.pm の API 変わりすぎ
  • Client Challenge

    yanbe
    yanbe 2013/09/24
  • YAPC::Asia Tokyo 2013: 「本当にあったレガシーな話」と最近のlivedoorBlogの改修 : D-7 <altijd in beweging>

    はい、というわけで自分のトークです: 昨年12月頃から関わってるlivedoorBlogのコードを触っていた時の憤りをスライドにぶつけてみました。 追記:スライドに「ログにマーカーをつける」というのは、(コード読んでないけど)多分こちらのエントリにあるLog::Minimal::Indentとだいたい同じ感じのヤツです ところでWeb上で見かける感想の中でこんなのがありました: 今年個人的に一番衝撃的だったのはやっぱ、livedoor blogのPlack化です。技術的な側面もさることながら、ああいう近視眼的には何のメリットもないし、逆にデメリットの方が大きそうな案件にリソースを割くジャッジができる会社としての姿勢が当に凄いなと。 実はビジネス的にも意味はあるんだなー。 なかなか書くことができなかったんだけど、その内容というのがこちらと→ ブログのお引っ越し機能を大幅に強化しました! (

    YAPC::Asia Tokyo 2013: 「本当にあったレガシーな話」と最近のlivedoorBlogの改修 : D-7 <altijd in beweging>
  • perlreref - Perl の正規表現のリファレンス

    This is a quick reference to Perl's regular expressions. For full information see perlre and perlop, as well as the "SEE ALSO" section in this document. ドキュメントは、Perl の正規表現のクイックリファレンスです。 完全な情報は、perlre と perlop、また、ドキュメントの "SEE ALSO" セクションを参照してください。 演算子¶

    yanbe
    yanbe 2013/09/19
    見やすい
  • PerlMotion - PerlがiOSにやってくる! - ニュース - Mobile Touch - モバイル/タブレット開発者およびデザイナー向け情報ポータル

    RubyMotionと言えばRubyでiOSアプリが書ける技術ですが、その対抗馬としてPerlでiOSアプリが書けるPerlMotionが登場しました。まだまだ開発版ですが、かなり熱いです! 筆者が利用したのはPerlbrewでインストールしたPerl 5.19.3、Homebrewでllvmをインストールしています(brew reinstall llvm --with-clang --with-asanとして実行)。後はcpanm CartonでCartonのインストール、carton installでcpanfileのインストールを行いました。とは言え現状では開発版でドキュメントはありませんので各自手探りでインストールする他ないでしょう。 一通りインストールが終わったらexamples/Helloへ移動して、../../bin/perl-motion buildを実行するとビルドが開始

    yanbe
    yanbe 2013/09/10
    これは...!!1
  • Zen of Perl

    This is inspired by (and largely in response to) the Zen of Python by Tim Peters. Beauty is subjective. Explicit is recommended, but not required. Simple is good, but complex can be good too. And although complicated is bad, Verbose and complicated is worse. Brief is better than long-winded. But readability counts. So use whitespace to enhance readability. Not because you're required to. Practical

    yanbe
    yanbe 2013/09/08
    アンサーソングだ!!1
  • How ElasticSearch lives in my DevOps life

    How ElasticSearch lives in my DevOps lifeAI-enhanced description ElasticSearch is a flexible and powerful open source, distributed real-time search and analytics engine for the cloud. It is JSON-oriented, uses a RESTful API, and has a schema-free design. Logstash is a tool for collecting, parsing, and storing logs and events in ElasticSearch for later use and analysis. It has many input, filter, a

    How ElasticSearch lives in my DevOps life
    yanbe
    yanbe 2013/09/01
    renren.comという中国のFacebookみたいなSNSでPerlからElasticSearchを使ってる事例
  • Text::VisualWidth::PP 0.02 がでていた - tokuhirom's blog

    Text::VisualWidth::PP 0.02 がでていた Text::VisualWidth::PP といえば、文字の幅が1文字幅か2文字幅かを判別してうまいことなにかやりたいときに便利なライブラリとして Perl 界では有名ですね。 このモジュール、もとはといえば mobirc を pure perl 化しようとしたときに Text::VisualWidth::XS の PP 版がなくてこまった!! っていう現象がおきたときに、つくったものなんですね。そんなモジュールが他でもつかわれるとは不思議なものです。 さて、そんな Text::VisualWidth::PP ですが、Songmu さんのブログで BEGIN { $Unicode::EastAsianWidth::EastAsian = 1; } をつかっていろいろがんばってる様子がのっておりまして、どうも、これは、楽をする

    yanbe
    yanbe 2013/08/07
  • Perlでレコメンデーション - YAPC::Asia Tokyo 2013

    ユーザに対して情報を推薦する機能は、全ての新しく生まれたデータを目視で確認し続けるのが辛い規模なサービスにとって欠かせない機能の一つです。 この発表では「レコメンデーション」という便利な言葉でくくられてしまいがちな、さまざまな種類の違う情報推薦の手法のうち鉄板なものについてサラっと解説し、おもにその手法を実現するためのライブラリやその使い方を紹介します。 お手軽に使えるCPANモジュールだけでなく、Jubatusというオンライン機械学習向け分散処理フレームワークをPerlから利用する方法や、「Pythonを使うのはNumPyとSciPyがあるから」という方のためにPDL(Perl Data Language)という行列演算に便利なPerlモジュールを使ったり使わなかったりして計算結果を得る方法についても紹介すると思います。

    yanbe
    yanbe 2013/07/12
    これは見たい
  • Monoceros雑感 - kazuhoのメモ置き場

    Monoceros は @kazeburo さんが開発してる Plack 用ウェブサーバ。prefork型だけど、待機中の接続をイベントドリブンのマネージャで管理することで、同時接続10,000とか行ける(ソケットの受け渡しは SCM_RIGHTS とか使う)。 で、雑感 大好き!!! Starletより遅い問題は、以下のようにすれば解決できると思う listen するソケットに TCP_DEFER_ACCEPT つけて、accept(2) は worker でのみ実行する worker は HTTP レスポンス送信後に read(2) してみて、後続のリクエストが来てない場合にのみ、マネージャプロセスにソケットを返還する (追記) 「返還」ではなく、マネージャプロセスが管理しているソケットのいずれかにデータがきている場合のみ、そのソケットとworkerのソケットを「交換」する、とすれば

    Monoceros雑感 - kazuhoのメモ置き場
    yanbe
    yanbe 2013/04/25
    Plack 用ウェブサーバ
  • Kindle本「Perlについて語ろう」を出版しました - ゆーすけべー日記

    プログラミング言語「Perl」の入門書「Perlについて語ろう」をKindle向け電子書籍として出版し販売を開始しました。 書は週刊で発行しているメルマガ「 ゆーすけべーラジオ」内の連載を原稿とし、加筆修正したものとなります。文字数はトータルで11万文字ちょい。紙媒体にして100ページ前後というボリュームで、480円という値付けにしてみました。Perl処女脱出から、基的なデータ構造の解説、様々なCPANモジュールの紹介、Webアプリケーションフレームワークの使い方などを「サクっと」した文章とコードでまとめました。Perl初心者の方を対象に、読み終わった頃にはWebアプリ開発ができている!ところまで持っていくことを目標にした入門書です。以下目次になります。 はじめに Perlとは? 初めてのPerl 関数とスカラー、配列 Perlにおけるデータ表現 データを操作する CPANモジュールを

    Kindle本「Perlについて語ろう」を出版しました - ゆーすけべー日記
  • おそらくはそれさえも平凡な日々: DBIx::TransactionManager::EndHookが便利だけどCPANに上がっていない件

    後輩だか先輩だかわからないsoh335さんが作った DBIx::TransactionManager::EndHook が地味にかなり便利。 入れ子になったtransactionでcommitが走った時に走らせたい処理を登録できます。 RDBだけで完結しない処理(ログやKVS連携等)を書きたい時に有用です。 何が嬉しいかは、335さんのエントリにも書いてあるんです が、例えば、ひとつのトランザクションの中で、 アイテム付与メソッド ボーナス付与メソッド みたいなメソッドを呼び出されていて、それぞれのメソッドの中でログを投げていた りとかするとします。コードにすると以下のような感じ。 (Tengっぽく書いてますが、DBIx::TransactionManager直でも全然構いません) my $txn = $teng->txn_scope; $user->take_item($item); $

    yanbe
    yanbe 2013/03/09
    便利そう