タグ

2010年2月25日のブックマーク (6件)

  • mizzy.org : perlで人工無脳 #0

    ちょっと興味と必要があって、人工無脳に手を出してみることになりました。まあ、人工無脳なんて今更って気もしますが、とりあえずやってみたことはどんなにしょぼくても公開する、というポリシーですので、恋するプログラム―Rubyでつくる人工無脳を参考にしながら、perlで実装していく過程をここに載せていきたいと思います。 といっても、このの流れに沿っていくわけではなく、俺の思いつきのままにやっていきますので、そこんとこよろしくです。 で、今回は人工無脳のパターン辞書を、何らかのデータから自動生成することを考えてみます。 パターン辞書というのは、人工無脳への問いかけの中に、「A」という言葉がある場合に、「B」という応答を返す、というパターンが記述された辞書です。これをひとつひとつ設定していくのではなく、自動的に生成するにはどうすればいいのか、という話ですね。 これは形態素解析を利用して、以下の様な処

  • [ThinkIT] 第1回:Catalystの導入 (1/2)

    Catalystは、PerlのWebアプリケーションフレームワークです。同じPerlのWebアプリケーションフレームワーク、Maypoleの後継で、Ruby on RailsやStrutsにインスパイアされて作られたものです。 MaypoleはデータベースのCRUD(Create、Read、Update、Delete)に焦点が当てられていましたが、Catalystはもっと汎用的なWebアプリケーションのために作られました。そして、Ruby on RailsやStruts の良いとこ取りをした、洗練されたWebアプリケーションフレームワークになっています。 Catalystを使うとWebアプリケーションに必要なものがほとんど全て手に入り、簡単かつスマートに開発できます。 Webサーバー Catalystは、CGI、mod_perl、mod_perl2、lighttpd、FastCGI等々、さ

  • 【Perl】 Catalystのアクション属性と特殊なアクション覚え書き: RemovableType

    Catalystで使用する主要なアクション属性と特殊なアクションについて、自分なりに調査した結果をまとめてみました。誤り等あれば、ご指摘ください<(_ _)> アクション属性: Path コントローラのパッケージ名+引数の文字列によるURLマッチングを行う。メソッド名はマッチングに使用されない。パッケージ名は全て大文字を小文字に置き換えてマッチングを行う。ただし、Rootコントローラは特殊(以下の例を見よ)。 例01: http://localhost:3000/foo/bar/baz にマッチ package MyApp::Controller::Foo::Bar; sub example_01 :Path('baz') { } 引数の文字列がない場合は、パッケージ名のみでマッチングを行う。 例02: http://localhost:3000/foo/bar にマッチ package

  • レンタルサーバー(というかSAKURAサーバー)へのCatalystインストールメモ | hylomの日記 | スラド

    とりあえず、CPANでガンガン~/以下にモジュールをインストール。 ちなみに自分の~/.cpan/CPAN/MyConfig.pmは↓のような感じに~/local/以下にモジュールをインストールするように設定済み。 'make_install_arg' => qq[SITEPREFIX=$ENV{HOME}/local PREFIX=$ENV{HOME}/local], 'makepl_arg' => qq[INSTALLDIRS=site LIB=$ENV{HOME}/local/lib/perl5 PREFIX=$ENV{HOME}/local], 'mbuildpl_arg' => qq[./Build --install_base $ENV{HOME}/local], ・Task::CatalystとCatalyst::Develをとりあえずインストール。あとはエラーが出たら適宜突

  • Moosification: Catalyst 5.8に移行した際にちょっと気づいた事。 - D-6 [相変わらず根無し]

    Moosification: Catalyst 5.8に移行した際にちょっと気づいた事。 最初からMooseベースでアプリケーションを作るというのは、実務ではなかなか難しいのはわかります。一般論は JPA #02で話すのでおいておきますが(参加申し込みは今日5/12までですよ!)、5.8 からMoose化したCatalystであった問題・注意点をちょっと書き出してみます。 1. use Catalyst Catalyst::Upgradingを読んでいると package MyApp; use Moose; extends 'Catalyst'; __PACKAGE__->setup(qw/ ConfigLoader /); という表記が見られるが、これは気をつけないと駄目。 自分が直面した問題は、path_to()等を使った時に起こった。path_to() は現アプリのルートディレクトリ

  • これだけは覚えておきたい!!MySQL の6つの自動変換 - sakaikの日々雑感~(T)編

    MySQLはとても気ぃつかい屋さんである。我々が投げる多少あいまいな指示も頑張って解釈し、なんとか文句を言わずに実行してみようと挑戦してみてくれる。 今日はそんなMySQLがケナゲに解釈してくれる自動変換について紹介しようと思う。この自動変換、ケナゲなMySQLの奥ゆかしさ故、出した指示と異なる動作をされたことに気がつかないことがある。ここで紹介する6つの自動変換をしっかり脳ミソにたたき込んでおけば、無用なトラブルにハマる時間も減るかもしれない。 1.[数値] 範囲外の数値は頭を押さえつけられる intやsmallint、bigintなどの数値型には、扱える範囲が決まっている。例えばint型なら最大21億ちょっとだ(unsignedの場合は43億弱)。これより大きい数字を登録するよう指示を出すとMySQLはどうするか。そう、頑張って入れられるところまで入れてくれるのである。「入れられるとこ

    これだけは覚えておきたい!!MySQL の6つの自動変換 - sakaikの日々雑感~(T)編