TinySegmenter in D.

分かち書きとかする時はMecabとかが有名なんだけど,手軽にやりたい時には色々と面倒だしバインディングとか用意するのもあれ,ということでTinySegmenterとかいうのを工藤さんが書かれていた.で,なんかいくつかの言語に移植されてたんだけど,D言語にないのが悔しかったので移植した(というかMecabバインディングとかってD言語あるのかな?).

http://bitbucket.org/repeatedly/scrap/src/tip/tinysegmenter.d

scoreForとかに関しては静的配列を使えば無駄なアロケーション防げそうなので,問題になるようであれば後々書き換える(今のD言語の一番のネックはこの辺のGCの性能だし).Range対応はどうするかねぇ…

追記

無駄なアロケーション減らしてパフォーマンス改善した.この記事書いた時より2倍くらい速くなってるはずです.