タグ屋さんの平台

開発した商品のリリースとアナウンスをします。

zinbeijettの機能追加

zinbeijett | RubyGems.org | your community gem host

github.com

私はずっと、検索エンジン実装を考えていました。そう、ブックオフRubyで作る検索エンジンという本を手にするまでは。何がしたかったのか、ただ正規表現エンジンを作ればやりたいことが実現できるという夢を持っていました。現実はそうではなかった。

それを実現するためには、Cは避けて通れないことがよくわかり、私はC言語を今更習得する気になれません。ので、村雨という検索エンジン実装は試作機で開発は終了する予定です。今後、JavaC#で書き直すことがあるかもしれませんがそれはまた次回、未定です。

そもそも、検索エンジンと名の付くものの書籍にはデータベースを使ってオンライン上で実行出来る環境作りが書かれていました。用途は違えどやっていることは同じであり、何も知らずよくここまで書けたものだと私自身が誇らしげでした。それぐらいこの書籍はためになりました。

機能追加したのは、

・AND検索

・NOT検索

2点です。全文検索と合わせれば、充分使えます。

動作は、WSL上のUbuntuで確認しました。WindowsコマンドプロンプトSJIS対応は今回していないため、動作しません。Linuxカーネルに優しい機能です。unit-test, mini-testはぼちぼちしていきます。その都度、バージョンの末尾が上がっていくことでしょう。

これで、検索エンジンを作るという去年から続いた課題はクリアしたことにします。機能追加のヒントもあり、今後さらに発展していけば、masterブランチの0バージョンよりvirtualブランチの1シリーズのほうが更新の頻度が高いかもしれません。

修正記録

・1.0.0ではzinbeijettのヘルプページ、オプションが-notになってました。

・1.0.0.1では、最下部に空白が足りず見栄えが悪かったです。

・1.0.0.2では、空白を入れすぎました。

・1.0.0.3で、最上部と最下部のみに空白を入れることにしました。

・1.0.1では、最下部まで読み込まないときに処理をするように指定しました。

・1.0.1.1では、engineのprint文をputs文に変更しました。

・1.0.1.2では、backtraceを表示できるようにputsを付与しました。

Copyright © 2007-2018 Takayuki Kamiyama. All Rights Reserved.