Apporo @overlast
Perl Apporo Apporo Perl
@overlast blog : http://diary.overlasting.net/ : : aiphone => : iphone Apporo DSIRNLP Mining the Social Web
Perl
= : = (not ) : ( or ) ( ) =
要素技術を4Stepで開発する例 0. 解決したい問題(テーマ)を決める 1. 発見 問題解決に使える技術 理論を探して 発見する 価値ある発見の後 試作して少量の問題を解く 2. デモ ブラウザからいじれる最小限のデモを作る 適用先のデータを使い 試作者以外とも議論 使い方と使われ方のギャップを埋めて大きな失敗を防ぐ 3. 判断 完成した時期に実用した際の有益度を判断する 実用的か 応用しやすいか 伸びしろはあるか 4. 開発 or 封印 有益度高 : 本気の開発を始める 有益度低 : 捨てる 作り直る テーマを変える
Perl Perl OS OK Perl 5 CPAN
Perl No!!!!!! Perl a. Perl or C/C++ b. Perl : Hadoop, Lucene Java c. d. OSS Perl
Perl C/C++ => C/C++ => => C++ Step Perl 1 Perl C/C++ Perl C/C++ XS & Perl Perl C/C++ + XS
Perl Perl Perl ( ) C/C++
Apporo
Apporo : indexing : : Perl (Perl )
Apporo C++ Perl index Suffix Array / [ ] index SA N-gram ( [ ] [ ] ) Bit Parallel Matching
index Apporo Apache Lucene SimString Apporo index index Suffix Array ( index ) ( ) index Segment * N 2 / ( ) /( ) Java C++(Python, Ruby) C++(Perl, Python) Lucene ( ) Apporo
(New BSD ) http://code.google.com/p/apporo/
Apporo
Apporo (1/2) 1 :
: : ( ) =
Apporo 1 : Step1. 2 a. : b. : Step2. indexing Step3. 2 : Step1. Step2. Step1 indexing Step3.
Apporo (2/2) 2 : a. 1 1 b. c.
Apporo Apporo Lucene(Solr) or Apporo
Apporo
( ) tsubomi (Suffix Array ) Apporo Apporo Perl
(index ) apporo_indexer UTF-8 indexing ASCII indexing
(index : yapc.txt)
( : demo.conf) API
( 2 ) apporo apporo./demo.conf apporo_searcher UTF-8 index u ASCII -u UTF8
(yapc.txt ) index index index index YAPC::Asia TOKYO 2011 Apporo Aporo Apporo
(Perl Apporo : demo.pl)
(Perl yapc.txt ) apporo demo.pl use Apporo; apporo_searcher
Perl Apporo Apporo Perl Apporo
@overlast http://code.google.com/p/apporo