タグ

ブックマーク / hakobe932.hatenablog.com (11)

  • IRCクライアントでMyはてなやRSS FeedをウォッチするためのIRCdを書いた - はこべにっき ♨

    はてなのお気に入りアンテナをTwitter Clientで見れるゲートウェイ「Hatetter」作りました と同じようなことを,Twitterクライアントではなく,IRCクライアントでやりたかったのです. というわけで,Pigというのを書いてgithubにあげてあります. http://github.com/hakobe/pig MyはてなRSS Feedの新着項目を発言してくれるIRCdです.そのうち,Perlでごにょごにょした結果をIRCdになげるライトな感じのフレームワークになる予定です. 追記: Mooseの依存がひどいらしいのでとりあえずAny::Moose化したので,すこしは入れやすくなってる? Myはてなをウォッチ とりあえず以下のようにすると,IRCクライアントでMyはてながウォッチできます. $ git clone git://github.com/hakobe/pig

    IRCクライアントでMyはてなやRSS FeedをウォッチするためのIRCdを書いた - はこべにっき ♨
  • 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でコルーチンについて発表してきた - はこべにっき ♨
    yappo
    yappo 2009/03/23
  • githubでforkしたリポジトリから本家にpush - はこべにっき#

    昨日いっていた問題が解決したので,あらためてgithubでforkしたリポジトリから家にpushする方法. 家にコミット権があるのが前提なので,ふつうは家をcloneして作業すれば問題ないです.ただ,途中までforkで開発してたんだけど,ある日,コミット権をもらったりして家に反映したいような時には便利です. 以下folkしたリポジトリのcloneのmaster branchにて, # remote リポジトリを設定する $ git remote add jugyo git@github.com:jugyo/termtter.git $ git fetch jugyo # git pullして家の変更を取り込む $ git pull --rebase jugyo # 変更をgit pushする $ git push jugyo いろいろまわり道したけど,すごいやったことある,コレ.

    githubでforkしたリポジトリから本家にpush - はこべにっき#
    yappo
    yappo 2009/01/08
  • より自然にRubyっぽくリストを書けるモジュールを書いた - はこべにっき ♨

    PerlのARRAYをRubyのArrayっぽく扱うためのモジュールがすでに三個くらいあって大人気ですね. List::RubyLike List::Rubyish List::Enumerator こういったモジュールを使うと, my @elems = map { $_ ** 2 } grep { $_ % 2 == 0 } (0..100); my $sum = 0; for my $n (@elems) { $sum += $n; } とか書いていたコードが, # List::Rubyishの場合 my $sum = List::Rubyish->new([0..100]) ->grep(sub{ $_ % 2 == 0}) ->map (sub{ $_ ** 2 }) ->reduce(sub { $_[0] + $_[1] }); みたいな感じのメソッドチェーンで書けるようになっ

    より自然にRubyっぽくリストを書けるモジュールを書いた - はこべにっき ♨
    yappo
    yappo 2008/10/16
    そういやcho45のもあったんだった><
  • perl-users.jp がすばらしそう - はこべにっき ♨

    おおお,これはすばらしい取り組みだなぁ. Perl-users.jp - 日Perlユーザのためのハブサイト perl-users.jp というサイトを立ち上げました 中でも,今時のPerlの書き方がコンテンツとして予定されていて非常に楽しみです.これまで初心者が今時のPerlの書き方を勉強するには,Plaggerとかのソースコードを必死に読みまくるとかしかなかったので,なかなか敷居が高い感じでした.入門があれば,より多くの人がナウいPerlにふれれて良いですね. 個人的にもCGI入門とかの古来のPerlよりも,今風なPlaggerのソースコードを読んではじめてPerlおもしれえええってなったので,その体験をより多くの人ができるようになるのは非常にすてきなことだと思います. サイトの管理がCodeReposになってるのもおもしろいなぁ. うちも,まだまだ,Perlハカーな方々には力及ば

    perl-users.jp がすばらしそう - はこべにっき ♨
  • Haskell Hackathon 2008に行ってきた - はこべにっき ♨

    昨日の3月1日に開催されたHaskell Hackathon 2008に関西会場から参加してきました.関東,関西,名古屋,ほか様々な開催地の参加者のみなさん,おつかれさまでした. Haskellの構文のパース+ちょっとだけ意味解析するのを目標としたのですが,人生で初めてのyaccにとまどっているうちに,yaccの使い方を学ぶだけで終わってしまいました.とんだyacc充です.パースはそこそこできてたので,意味解析までいきたかったなあ. 参加者のなかには,再帰とか遅延評価とかも実装完了していた方もいたそうです.すごいなぁ.もっと修行して,言語処理系とか余裕ですよとか言いたい.たぶん,言語の次は,ソースコード解析とかIRとかが流行るから,今のうちに勉強しておいたら良いかと思いました. ともあれ,今回,Perlでパーサを作る方法をいろいろ調べたので,メモがてらまとめておきます.以下でパース対象にし

    Haskell Hackathon 2008に行ってきた - はこべにっき ♨
    yappo
    yappo 2008/03/03
    いっぱいよばれた
  • CodeRepos + svkでmiss - はこべにっき ♨

    CodeReposはsvkで使ってるんだけど,昨日のautobox::URI::Fetchをコミットしたときに,壮大にミスってしまったようです. どうにかしなきゃいけないcommit CodeReposを利用している皆さんにはご迷惑をおかけしました.ごめんなさい.元にもどしてくれたid:yappoさんとid:miyagawaさん++.ありがとうございました. どのへんがまずかったのか Yappoさんからのアドバイスにあるように, $ svk co //local/coderepos/lang/perl/ .とかしてたのが良くなかったようです.これはつまり,ローカルのブランチから作業コピーをチェックアウトしていることになるのですが,この場合修正をした後, svk ci svk push --verbatim //local/codereposをすることで,CodeReposに変更を反映するこ

    CodeRepos + svkでmiss - はこべにっき ♨
  • Mac OS X 10.5.1にアップデートしたらはまった - はこべにっき ♨

    10.5.1にアップデートしたら、Spotlightが暴走したり、システム全体がめちゃ遅になったりで、たいへんなことになった。キーボード入力したら1分くらいしてから画面に反映される感じ。 調べてみたところ、/tmpのパーミッションが644になっているのを発見。chmod 777 /tmp chmod 1777 /tmp*1したら普通に動くようになった。そら普通のプログラムは/tmpが1777になってる前提で動いてるわいな。 しかしながら、sshでマシンにログインするとキーボード入力も普通にできたりするので、GUIでだけ動いているプログラムがなんかしらやってるのかな。 追記: /tmpのパーミッションは777と思ってたら正確にはちょっと違うらしい。drwxrwxrwtだとか。tってなに?ともあれ、/tmo以外にもアクセス権が変わってそうなので、ディスクユーティリティからアクセス権の修正をする

    Mac OS X 10.5.1にアップデートしたらはまった - はこべにっき ♨
    yappo
    yappo 2007/11/19
    /private/tmp にリンクされてるから0777はなんかちがうきがする
  • Filter::FLVInfo書いた - はこべにっき ♨

    iPod touch向けのニコニコ動画のPodcastを生成するのときは、Filter::FFmpegを直接いじってたのだけど、 あまりかっこよくないので、FLV::Infoで情報を取り出す部分だけを、別のプラグインに分けました。 FLV::Infoでとりだした情報を$entry->meta->{flvinfo}に突っ込んでるだけ。以下のようにして、Rule::Expressionで分岐させるのに使えます。 plugins: - module: Subscription::Config config: # 略 - module: Filter::FetchNicoVideo config: # 略 - module: Filter::FLVInfo - module: Filter::FFmpeg rule: expression: "$args->{entry}->meta->{flvi

    Filter::FLVInfo書いた - はこべにっき ♨
  • iPod touch向けのニコニコ動画のPodcastを生成する - はこべにっき#

    iPod touchが届いたー! この連休は家から出られなくなったので、iPod touchをいじり倒す予定です。 せっかくなので、Plaggerを使って、ニコニコ動画のマイリストから動画Podcastを生成してみました。ニコニコ動画 => Podcast => iTunes => iPod touch が自動できるようになるので、いつでも素敵動画が持ち歩けるように! 実際にやってみた ではまず、おもむろにお気に入りの動画をマイリストに登録します。いかにも怪しげなマイリストです。 このマイリストのRSSをもとにPlaggerで動画Podcastを生成します。Plaggerの野良プラグインに、Filter::FetchNicoVideoとFilter::FFmpegがあるのでこれを利用します。詳しくは後述。 できあがったPodcastiTunesではこんな感じに見えますよ。 ここまでくれば

    iPod touch向けのニコニコ動画のPodcastを生成する - はこべにっき#
    yappo
    yappo 2007/09/25
    こみっとまだー?
  • Plaggerをインストールしてみてわかったこと - はこべにっき ♨

    やっとこPlaggerを使えるところまでたどり着けた。livedoor Readerの更新FeedがGmailにどさっと届いたよ。おもしろい。 さて、Plaggerにたどり着くまでには、いくつものモジュールインストールとそのテストの失敗、たくさんの妥協、汗、涙、睡眠不足などの困難が伴ったわけだ*1。そのおかげでCPANやPerlについてわかったことをあげてみることにした。 CPANは便利でおもしろい WWW::YouTubeとかHatena::FormatterとかMac::Glueとか。もっとセンセーショナルなモジュールもたくさんあるよね。CPAN漁ったりPlaggerの依存で入るモジュールを眺めていると、こんなのもモジュール化されてるのか!っておどろくことが多い。もうほんと自分でコード書く必要あるのかというほどの充実ぶり。 CPAN漁りにはモジュールに関するいろんな情報があつまったCP

    Plaggerをインストールしてみてわかったこと - はこべにっき ♨
    yappo
    yappo 2006/06/02
    Hatena::Formatter
  • 1