tl;dr: 実装したけど限定的にしかうまく動かなかった。PerlのScope::Guardについて既に良く知っている人は、最後の節まで飛ばしてもよい。 Server::Starter読んでた サーバプロセスを起動するツールであるServer::Starterの内部がどうなっているのか知りたくなってきたので、コードリーディングをやることにした。プロセスを扱うツールなだけあって、システムコールやシグナルを活用する本場のUNIXプログラミングを目の当たりにし、普段は見ない語彙がたくさん出てきてたじろいでしまった。たじろぎつつもコードを読み進めていると、ちょっと不思議なコードを見付けた。それは[Guard](https://github.com/kazuho/p5-Server-Starter/blob/master/lib/Server/Starter/Guard.pmというクラスで、ちょっと

先週末、はてな社内の勉強会で構造学習、特に実装が簡単な構造化パーセプトロンについて発表しました。発表資料と説明用にサンプルで書いたPerlの品詞タグ付けのコードへのリンクを張っておきます。 今日からできる構造学習(主に構造化パーセプトロンについて) from syou6162 structured_perceptron/structured_perceptron.pl at master · syou6162/structured_perceptron 「えっ、Perlかよ」という人がいるといけないので、Clojureで構造化パーセプトロンを使った係り受け解析のサンプルコードへのリンクも張っておきます(2種類あります)。PerlもClojureもあれば8割くらいの人はカバーできそうなので、安心ですね。 syou6162/simple_shift_reduce_parsing syou616


Update: So how did we do with these predictions? Check out our March 2016 article thatbreaks down which of the following languages continue to retain market-share... and which are,indeed, imploding. As developersembrace newprogramming languages, older languages cango one of two ways: stay in use, despite fading popularity, or die out completely. We predict the following languages will likely

日本Rubyの会 公式Wiki - 第32回Ruby勉強会@関西 に行ってきました.なんだかんだでひさびさのRuby勉強会でたのしかった! 運営のみなさまおつかれさまでした. 勉強会に行くと,普段得られない刺激がいろいろ得られて良いですね.日常生活はパターンに押し込めがちでだれてくるので,定期的に非日常に自分をもってくのは,精神衛生上よろしいです. 全般的な詳細については,日本Rubyの会 公式Wiki - 第32回Ruby勉強会@関西の続々よせられるであろうトラックバックや(とおもったらなんか無効になってる),いっしょに行っていっしょにさくさく迷った,id:hitode909くんの第32回Ruby勉強会@関西に行った - hitode909の日記というエントリを参照してみてください. 今回はサイロスさんのFiberについてのセッションがおもしろかったので,Fiberについていろいろ
SQL::Translator is a group ofPerl modules that manipulate structured data definitions (mostlydatabase schemas) in interesting ways, such as converting among different dialects ofCREATE syntax (e.g.,MySQL-to-Oracle), visualizations of schemas (pseudo-ER diagrams: GraphViz or GD), automatic code generation (using Class::DBI), converting non-RDBMS files toSQL schemas (xSVtext files,Excel sprea
ライブドアブログの PSGI 化の話 は良いはなしだと思う。一方で、私はあんまりPerl が好きじゃないので、10年にわたって生き続けたPerl アプリケーションが、次の10年にむけてアップをはじめているのは、ちょっとしたホラーでもある。Twitter とRuby と JVM ライブドアブログが、将来に向けて mod_perl から PSGI + Starlet にかえたように、将来に向けてプログラミング言語をかえる人達も存在する。最近の事例で有名なのは、Twitter のRuby から JVM 言語群への移行だろう。 OSCONJava 2011 のTwitter: FromRuby onRails to the JVM では、JVM への移行に至った理由として Ability to handle server workloads A real concurrency
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です -はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。はてなグループに投稿された日記データのエクスポートについて -はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記はてなグループ日記のエクスポートデータは2020年2月28
Perlの食えない事情 より おっと、そうです、Perlには演算子が多すぎるのでした。せっかくの機会なので、Perlの演算子を紹介します。 ビーナス演算子: 0+, +0 数値として評価してくれます。意外とよく見かけますね。 なぜこの演算子を使う必要があるのかというと、Perlは文字列と数値を明確に区別できないからです。scalarを文字列として解釈するならば文字列として、 print 0+ '10'; #=> 10 print 0+ '123b'; #=> 123 print '1.2e3' +0; #=> 1200 print [] +0; #=> 4303367864 ちなみに、文字列として評価するときにはこのようにするとかっこいいと言われています。 $obj.q(); 一見メソッド呼び出しのように見えますが $obj . ''; と等価です。 ベビーカー演算子: @{[ ]} 文字
こんにちは。加藤和良です。 まずあの話を書いて、それを前提にあの話を書いて、みたいなキューが筆者の中にはあったのですが、正直キューの先端につまってる話はだんだん個人的な関心および記憶がうすれてきました! 昔のはなしですからね。 というわけで、最近のまとめをさらっと書いて、新しいネタをすぐ書ける状態にリセットしたいと思います。 Jenkins mixi ではバージョン管理システムとして Subversion を使っています。安定した、いつでもリリースできるバージョンを trunk に、開発中の機能は branches 以下に作業ブランチをつくり、レビューや QA などの後に trunk にマージする、という運用です。Buildbot はこのうち trunk だけを追っていたのですが、徐々に「このブランチもBuildbot で追うようにして、結果をこのIRC チャンネルに書きこんでほしい

やあハッキングモンスターのみんな、元気かーい? ぼくは普通です。 きょうはみんなでログをう゛ぁーてぃかるぱみゅぱみゅしちゃうぞ!あ、こんにちは bayashi です。 さて、ログは見てるかい?cat してるかい? tail してるかい? GB単位のログをvim で開いてフリーズさせてやいないかい?ログは吐いたら終わりじゃいけないぜ!ちゃんとうぉっちしないと鬼がでちゃうぞ!! とはいえ、そんなログも、たいていは1行につらつらと書かれてて見るのがつらいね!!例えばこんなやつだ。 $ taillog 127.0.0.1 - bayashi [10/Oct/2000:13:55:36 -0700] "GET /apache_pb.gif HTTP/1.0" 200 2326 "http://www.example.com/start.html" "Mozilla/4.0 (compatible

Skype4IRC - Skype-IRCGateway forWindows About Skype4IRC Skypeのチャット機能をIRCクライアントから利用できるようにするゲートウェイサーバーです。 Download svn co http://svn.coderepos.org/share/lang/perl/Skype4IRC/trunk/ skype4ircUsage Skype と skype4irc を起動します。初回起動の場合 Skype がAPI へのアクセスを許可するかどうかのダイアログをだすので許可してください。IRCクライアントでlocalhost:6667 へつなぎます。 接続完了後自動で &contacts というチャンネルにjoin します。&contacts チャンネルにはあなたのSkypeコンタクトに登録されているIDが全員joinした状
こんにちは。最近はPHP ばっかり書いている、永遠のPerl 初心者 hatyuki です。 とつぜん質問ですが、みなさんが最も多くみているPerl のエラーはなんですか? 自分の場合は、う〜ん。。。 Can't locate Hoge.pm in @INC (@INC contains: ~~~~ .). BEGIN failed--compilation aborted. かな?いつまでも進歩がないのが伺えますね! 皆さんご存知の通り、このエラーは "@INC" で指定されたディレクトリの中にモジュールが見つからなかった場合に発生するエラーです。つまり、モジュールをインストールし忘れているか、モジュールがどこに置いてあるのかを適切に設定していないか、の (およそ) どちらかですね。 さてさて、CasualPerler な皆さんは、このエラーを回避するためにどんな方法を使って @

UUID がどういうものであるか,とかUUID の表現形については省略します。UUID -Wikipedia が参考になるかと。UUID の仕様として RFC 4122 を参照しました*1。なのでより細かいことについては原文を参照してください。策定されるまでにいろいろ経緯があるのですが,そのへんは http://www.rfcnews.jp/archives/2005/07/rfc_4122uuidurn.html に譲ります。UUID の構造UUID の内部構造をおおまかに表すと以下のようになります。 variant 2 bit (3 bit) version 4 bit time 60 bit clock_seq 14 bit (13 bit) node 48 bit 実際には variant フィールドは clock_seq フィールドのオクテットの中に埋め込まれています
rbenvを使ってみる - すぎゃーんメモの続き。 現時点でのrbenvのバージョンは0.2.1。 rbenvを使っていると.rbenv-versionファイルの有無でrubyコマンド打ったときに実行されるrubyが違うものになる、というのがちょっと新鮮で、これはどういう仕組みで動いているのだろう?と思って少し調べてみた。 上記記事のようにrbenvの設定をした環境では、 $ whichruby /Users/sugyan/.rbenv/shims/rubyとなり、${RBENV_ROOT}/shims以下のrubyを指すことになる。ここへのPATHは$HOME/.rbenv/libexec/rbenv-initに echo 'export PATH="'${RBENV_ROOT}'/shims:${PATH}"' と書かれているので、eval "$(rbenv init -)"してあれ
当サイトのblogのエントリーで検索ワードが多いのはCPANなんですがこの古い記事はperl5.6時代に書いた記事(多分10年近く前だと思う)で今時のperl使いにお勧めできるものではありません。 2010年2月にあの miyagawa さんが書いた cpanminus が非常に素晴らしいので CPAN::shell を捨てて App-cpanminus を積極的に利用しましょう。 と言うことでcpanに関連して新しい記事を書いてみました。 CPAN::shell の欠点 設定が面倒 動作が遅い(cpanmと比較して) 多くのメモリが必要(制約のきついレンタルサーバで使うのは無理) 依存するモジュールが多い 基本root権限が必要 cpanm の利点 一枚岩のプログラムで可搬性に優れる 高速で小メモリでも動作可能 pluginで拡張できる local::lib と組み合わせるとユーザーラン
忘れそうなので Lion クリーンインストールMac mini が動きだしたので、今までメインで使ってたMacBookPro も Lion クリーンインストール。 参考MacBookAir 11(Late 2010)への、OS X Lion クリーンインストール - とあるプログラマのチラ裏 Xcode インストールMac App Store をご利用ください。 Homebrew インストールいつもインストール先はデフォルト (/usr/local 以下) なんですが、今回は $HOME/.homebrew にしてみました。 rvm やpythonbrew とかが $HOME 以下にあるんで、揃えてみようかと。 $ git clone git://github.com/mxcl/homebrew.git $HOME/.homebrew $ export PATH=$HOME/.ho
今回はGM_Liteの公開です。 GM_LiteはあのGoogleMapsをローカルで動作させるソフトです。出先でアンテナや通信料を気にしながらネットにつなぐ必要はありませんし、地図はGoogleさんから(こっそり)持ってきますので無料。地図画像をローカルから読み出すだけで、基本的にGoogleMapsと同じ仕組みで動いてます。スクリーンショットはこんな感じです。 使い方は、Zaurusの場合はOperaで、PCの場合はFirefoxでgm_lite.htmlを開くだけです。詳しい使い方は’?'キーで出てくるので、そちらをどうぞ。 ちなみにZaurusのOperaはバージョン毎に挙動が微妙に異なるのですが、個人的にはOpera 7.25がデフォルトで日本語入力できるしおかしな動作もないので、お勧めです。 インストールは不要で、 gm_lite-0.1.0.zip を展開し、地図をダウン
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く