2005年3月29日
アップル・コンピュータ社の情報を収集したいが、逐一サイトに訪れるのは面倒。最近は、Webサイトの更新をRSS配信によって公開しているサイトが多く特にIT情報サイトはほとんど利用している。そこでRSSをプログラムで取得して、それを人間が読みやすいように変更してGoogleニュースのような自動生成ページをつくりたい。(Googleのようにカテゴリ分けせず、RSSリーダのWeb版のようなイメージ)
Subversion内にJava言語でのXMLを扱ったサンプルプログラムがあるが、他の言語でのXML使用方法が気になる。プログラムを実行した際に、JVMがリンケージを実行するのにタイムラグが生じるのと、無料ホスティングサイトではJavaが使えない場合がおおいため、Perlでの実装が非常に気になる。またコマンドを実行した時、C言語は軽快な動作が保証されたプログラムになるので、C言語版も見逃せない。
そこで、
予想としては、Javaはインターネットと同時に進化している言語なので実装が比較的容易であることが予想される。(というか分かっている。XML用APIが標準APIとしてあるので、、、)が、欠点として、JVMのリンケージに0.5秒掛かるのが気に入らない。(詳細)Celeron300MHzマシンではさらに遅くなる。Perlはインタプリタ言語であるが以前おこなった速度検証でその時はJavaより早いことが理解できたので結構つかえると思う。Perlは動的言語であり、型をもたず、CPANのパッケージなどで実装が容易であることが予想される。しかも無料ホスティングサイトでもその資産が生かせる。問題点としては、将来ソースコードが読めなくなる自信がある。C言語はいくつかxmlパーサがあるので活用できるだろう。ただ実装が一番めんどくさい。今回はアップル・コンピュータの英語圏情報サイトが対象であるため、ASCIIコードなので問題ないが、iconvなどを利用する国際化はいささかソースコードが汚くなりそう。だが最速であり個人的に美しい。
とりあえず、昨日Perlを書いたので、C言語が書きたい。ということでC言語で実装してみる。