とりあえずメモ。 説明するときに使える表現がありそうな気がするので。
Graphviz を Mac OS X にポーティングしたもの。 「Doxygen で使うため」って感じなのでこれを選択する必要がない気もするけど、 とりあえずメモ。
これ、開発が止まってけっこう経ってるね。 困ったなぁ…。 こちらの導入も考えるか。
僕が尊敬している庄境さんのお話。 この方、旭化成社が音声認識技術を捨てようとした時に凄い活動で状況を覆した人で、 ある意味におけるプロジェクト・マネージャーとしても参考にすべき点が多い。
カーナビでかなりの勢力を誇る VORERO は、 庄境さんが起こした事業のはず。
超安定指向の Linux ディストリビューション。 でも所謂人柱版。
ver.3.5 から Doxygen に本格対応した Julius (現在 ver.3.5.2) のドキュメントを 私的文書置場 に置きました。 Graphviz は古めのもの (上記の Mac OS X 版) を使いましたが、 Doxygen は最新のものを使いました。 fan.gr.jp との契約を止めるまでは上記 URI でアクセスできるようにします & 可能な限り最新版 Julius に対応するつもりな ので、必要な方はブックマークを。
ちなみに Julian の方もアップロードするか検討中。 もちろん手元では既に作成済みなんだけど、 Julius とほとんどの部分が共通なので、ちょっとね…。
仮想 PC/AT 互換機環境を構築する Windows 向けソフトウェア。
いちおうまだ更新されるのか…。
月曜日だけ本社で作業。残りの平日は全て大学で作業。
あるオープン・ソース系アプリケーションのコード (言語は C) を読んでいるのだけれど、 これがなかなか進まない。 学術的な基礎を持ってない人間がいきなり全体を通して読むのはかなりキツいこと、 コンパイル単位をまたいだグローバル変数が「これでもかっ!!」という位によく使われていていること、 実験での使用を前提にしているため多機能すぎてコード量がとても多いこと、 グローバル変数と構造体の使い方の関係で意外に処理の流れが見え難いことなど、 想像以上に厳しい感じ。 …本当に僕が 1 年弱で再構築するなんて可能なのかな。 …まあ、…かなり不安だけど、とりあえずやるしかない。
最近ずっと 「この技術・知識を獲得した人材は、企業にとって保有する意味のある技術者になるのだろうか?」 を強く知りたいと考えてる。 この技術の社会的な価値がそれによって把握できると思うからだ。 “高度なセンサ”的使い方が定着するまでは、あまり期待できなさそうだけど。
ああ、久々に ソースコードを読むための技術と タダ働きが世界を動かす を読みたくなった。
メモ。 まあ、頭の固い人じゃ読んでも理解できないのでしょうけど。
NVIDIA Geforce 系チップ用公式ドライバ。
MPEG4 系ビデオ codec の有力な選択肢の一つ。 約 1 ヶ月ぶりの version up。
定番の Linux ディストリビューション。 3.1 系としては約 4 ヶ月半ぶりの version up。
高速性と堅牢性を追及した SQL データ・ベース。 約 1 ヶ月ぶりの version up。
Ogg Vorbis 系ツールやライブラリの高速化を狙ったもの。
Windows 上で動く高機能なタブ型 web browser。 約 2 週間ぶりの version up。
美しいペン習字風 font。
Mac OS X 向け pLaTeX パッケージ。
実は多くの人がこちらを選択してるんじゃないかな。 桐木さんのパッケージ、なかなか出ないし。
月・火曜日は本社で作業。 水・木・金曜日は大学で作業。
某アプリケーションのコード読み、ちょっと慣れてきた。 強引に C で多少複雑なデータを扱っていても、 今ならそれほど苦しまずに概要を把握できる。 ほぼ純粋な ANSI C の範囲で書かれてるからというのが大きく、 完全にドキュメントなしのオリジナル・ライブラリをガンガン使われてたら (前の会社で最初に参加したプロジェクトが該当。かなりキツかった) お手上げだったかも。 規模が規模だけに。
今日の作業は本当に充実していた。 気付いたら作業終了予定時刻を過ぎていた。 そんな感じだった。 この状態が続けば良い成果物を出せるはずだ。 …と言うわけで、改めてこの作業は大学でやった方が良いね。 間違いなく。 とにかく、雑音 (雑談?) が多く聞こえる場所だけは避けたいところ。
京都大学西部講堂の名物ロック・フェスティバル。 今年も豪華な面子やね。 個人的には 10/8, 9 行きたいです (無理なんだけど)。
事前に libiconv, gettext を入れておくのが吉。
CFLAGS
はお好みで。
$ wget -c http://jaist.dl.sourceforge.net/sourceforge/flex/flex-2.5.33.tar.bz2 $ bzcat flex-2.5.33.tar.bz2 | tar xvf - $ cd flex-2.5.33/ $ ./configure $ make && make check $ sudo make install
これも事前に libiconv, gettext を入れておくのが吉。
やはり CFLAGS
はお好みで。
$ wget -c http://www.ring.gr.jp/archives/GNU/textutils/textutils-2.1.tar.bz2 $ bzcat textutils-2.1.tar.bz2 | tar xvf - $ cd textutils-2.1/ $ ./configure $ make && make check $ sudo make install
Mac OS X 標準のものは GNU のとは違うっぽいので、とりあえず。
複数の文字コードに対応した C の正規表現ライブラリ (BSD ライセンス)。 約 10 日ぶりの version up。
少し前に書いた N クイーンのコード、ちょっといじったら、
Intel Core Duo 2GHz 上での 15 クイーンの結果が
18.597u 0.036s 0:18.66 99.7%
から
17.249u 0.025s 0:17.28 99.8%
になった。
配列へのアクセスの仕方って重要なんだ…。
と思っていたら、G4 では逆に遅くなってしまった。
GCC のオプションを -mtune=pentium-m を中心に変更したら、更に速くなった。 せっかくなので、もう少し詰めてみようかな。
MacOS X 向け dvi viewer。 所謂人柱版。
Mac OS X でファイル (の拡張子) やスキーム名等とアプリケーションの対応付けをカスタマイズするツール。 けっこう便利かも。
各種フォーマットに対応したサウンド変換・再生・保存コマンド。
基本的には 12.18.1 の時 と同じ。 事前に libvorbis, libmad, lame をインストールしておくと、自動的に使ってくれる。
wget -c http://jaist.dl.sourceforge.net/sourceforge/sox/sox-12.18.2.tar.gz zcat sox-12.18.2.tar.gz | tar xvf - cd sox-12.18.2/ vim Makefile.in +34
ここで、開いた行にある install: $(PLAY_INSTALL_$(PLAY_SUPPORT))
を、
install: all $(PLAY_INSTALL_$(PLAY_SUPPORT))
に書き換える。
$ ./configure $ make $ sudo make install $ sudo make install-lib
もちろん CFLAGS
はお好みで。
muneda さんの日記から。 メモ。
メモ。
Doxygen や Graphviz が入っている環境では、 それらを使ってドキュメントを生成してくれる。
$ wget -c http://jaist.dl.sourceforge.net/sourceforge/cppunit/cppunit-1.12.0.tar.gz $ zcat cppunit-1.12.0.tar.gz | tar xvf - $ cd cppunit-1.12.0/ $ ./configure $ make && make check $ sudo make install
もちろん CFLAGS
はお好みで。
音声認識エンジン AmiVoice で有名な Advanced Media 社の 鈴木氏へのインタビュー。 自然言語処理や音声認識で企業経営できてるのって、本当に凄いと思うわけです。
AmiVoice と言えば、愛知万博で有名になった ココロ社のアクトロイド への搭載など、「とにかくアピールが上手」という印象が強い。 各種データのカスタマイズをきっちりやって、 行く先々で毎回良いデモを見せてるのだろうな。 きっと (うちの会社の企画が本当に“凄いエンジン”と信じてたところを見ると…)。 「現実を忘れない発想力豊かな企画と、その提案を受け止める技術」って感じなのかな? まあ、実際のところは分からないけど。
高林さんが Unix Magazine に掲載した記事 と一緒にメモ。
sary は Suffix Array のライブラリとツールです。 Suffix Array と呼ばれるデータ構造を用いることにより、 10MB, 100MB といっ た巨大なテキストファイルに対する高速な全文検索を実現します。
かなり前に解説文書を読んだ たつをさんの SUFARY も一緒にメモ。
Apple 社が公開している multimedia のコンポーネント群。 約 2 ヶ月半ぶりの version up。
Apple 社が公開しているジュークボックス・ツール。
けっこう見た目の印象が変わったような。 個人的には 2 つ前くらいの雰囲気が好きだったんだけどなぁ…。
本質的なシンプルさを備えているスクリプト言語。 所謂人柱版。
Mac OS X 上で動く FTP, SFTP クライアント。 約 1 ヶ月ぶりの version up。
Emacs 用の GnuPG インターフェイス。 約 1 ヶ月ぶりの version up。
定番の multi platform な web browser。 約 1 ヶ月半ぶりの version up。
multi platform な web browser, Firefox の日本語版。 約 1 ヶ月半ぶりの version up。
multi plat-home な message user agent。
multi plat-home な message user agent, Thunderbird の日本語版。
Cocoa な Gecko 系 web browser。 約 3 ヶ月ぶりの version up。
Mac で Mac OS X と Windows の dual boot を実現するためのツール。 所謂人柱版。
11/22 発売予定の新作。 かつての勢いは完全にないけど、もちろん買う。
10/4 発売予定の新作。 けっこう久々の作品か。
超安定指向の Linux ディストリビューション。 でも所謂人柱版。
複数の文字コードに対応した C の正規表現ライブラリ (BSD ライセンス)。 約 1 週間ぶりの version up。
Ogg Vorbis 系ツールやライブラリの高速化を狙ったもの。
make check で少しエラーが出てしまったけど、とりあえず。
事前に libiconv, gettext をインストールしておくと吉。
もちろん CFLAGS
はお好みで。
以下、Intel Core Duo 環境の場合。
$ wget -c ftp://ftp.gtk.org/pub/gtk/v1.3/glib-1.3.15.tar.gz $ zcat glib-1.3.15.tar.gz | tar xvf - $ cd glib-1.3.15/ $ ./configure --build=i386-apple-bsd $ make && make check $ sudo make install
以下、PowerPC G4 環境の場合。
$ wget -c ftp://ftp.gtk.org/pub/gtk/v1.3/glib-1.3.15.tar.gz $ zcat glib-1.3.15.tar.gz | tar xvf - $ cd glib-1.3.15/ $ ./configure --build=powerpc-apple-bsd $ make && make check $ sudo make install
いずれの場合も、必要に応じて
configure 時に --disable-gtk-doc
を指定すること。
やはり make check で少しエラーが出てしまったけど、とりあえず。 事前に libiconv, gettext をインストールしておくと吉。
$ wget -c ftp://ftp.gtk.org/pub/glib/2.12/glib-2.12.3.tar.bz2 $ bzcat glib-2.12.3.tar.bz2 | tar xvf - $ cd glib-2.12.3/ $ ./configure --enable-static $ make && make check $ sudo make install
もちろん CFLAGS
はお好みで。
GLib を使用して開発するなら、 リファレンスを参考にすると良い。
事前に GLib 2, libiconv, gettext をインストールしておくと吉。
$ wget -c http://sary.sourceforge.net/sary-1.2.0.tar.gz $ zcat sary-1.2.0.tar.gz | tar xvf - $ cd sary-1.2.0/ $ ./configure $ make && make check $ sudo make install
CFLAGS
はお好みで。
MMX や各 SSE, 3DNow! などをサポートした 80x86 環境向けアセンブラ。 約 1 ヶ月半ぶりの version up。
自分で組んだ Carbon Emacs に標準で入っていた CPerl mode が 上手く動かなかった (昔の設定が残っていたのが問題かも?) ので、 こちらから 最新版を入手して入れ直した。
$ wget -c http://math.berkeley.edu/~ilya/software/emacs/cperl-mode.el.5.20.bz2 $ bzcat cperl-mode.el.5.20.bz2 > cperl-mode.el $ sudo cp cperl-mode.el /usr/local/share/emacs/site-lisp/miscellaneous/ $ cd /usr/local/share/emacs/site-lisp/miscellaneous/ $ sudo emacs -q -no-site-file -batch -f batch-byte-compile cperl-mode.el
とりあえず使える様になった。 :-)
月曜日は本社、火〜木曜日は大学、金曜日は違う大学。 ずっと忙しかったけど、収穫の多い 1 週間だった。
某アプリケーションのコード読み、かなり慣れてきた。 信号処理以外なら (ここはまだ弱気…) 確実に読み進めていける感触があるので、 普通に行けば予定通り年度末までにある程度の成果物を出せるはず。 …まあ、だからと言って楽できそうな雰囲気は全くないけど。 とりあえず、高速化のためのアルゴリズム調査と並行する形で、 今の読解手順を守って読み進めていこう。
今年度の新人は大学入学と同時にまともな計算機を使える環境にいた (これは出身大学の方針もありますね) らしい。 僕と同じくらいの使用歴…。 ちなみにプログラミングを始めたのは僕より前らしい…。 さすがに最近の子は…、羨ましいなぁ…。 僕は大学院に入るまでまともに計算機を触ったことなかったからなぁ…。
ここからは連休に入ってからした作業。 週の後半に集中できる時間をキッチリ確保できるか怪しいので、 フライング的に仕事してしまった。
JPerl で書かれていた某データ作成ツールを、汎用性を持たせた形で Ruby で書き直した。 まだ速度的には確実に負けてる (それでも最初の最初よりはかなり速くした) けど、 僕の好きな文字列処理ということもあって、現時点での柔軟性はこちらの方が断トツで上。 当たり前だけど、対応言語に関しては比較にならない。 …いやいや、久々に触ったわけだけど、やっぱり Ruby で書くのってけっこう快適だね。
気まぐれで 鬼車 2.5.7 を使って Ruby 1.8.4 を組んでみたんだけど、これが思っていた以上に速くてびっくりした。 正規表現を多用したスクリプトを走らせてる人は、試してみた方が良いんじゃないかな。 それ位に違いがある。
Ruby を組むときに CFLAGS
に -fomit-frame-pointer
を
含めていたら、コンパイル時にエラーが発生した。
-pipe
以外でもこけるんだ…。
VNC の拡張により構築するリモート・デスクトップ環境。 今回も Windows 版だけ。
Windows 定番の message user agent。 約 3 ヶ月半ぶりの version up。
複数の文字コードに対応した C の正規表現ライブラリ (BSD ライセンス)。 数日ぶりの version up。
シンプルで小さい DOM な XML パーサ。 約 3 週間ぶりの version up。
本質的なシンプルさを備えているスクリプト言語。
奥村教授 (三重大学) original の日本語環境向け class file。 約 2 ヶ月ぶりの version up。
オレンジニュースから。 メモ。 素晴らしい仕事。
おおー、これは素晴らしいですね。 早めに試してみよう。
gdi++.dll は、Windows のシステムファイルの一つ、 gdi32.dll の動作を横取りし、 文字描画を担当する API をオーバーライドすることで、 フォントの表示品質を改善します。
10/25 発売予定のデビュー盤。 こんなに早く出るとは…。意外だ。
ちょっと面倒臭いけど、 セキュリティホール memo に書かれてる不具合の対策として。
$ wget -c ftp://sunfreeware.risq.qc.ca/SOURCES/gzip-1.3.5.tar.Z $ zcat gzip-1.3.5.tar.Z | tar xvf - $ cd gzip-1.3.5/ $ wget -c http://security.freebsd.org/patches/SA-06:21/gzip.patch $ patch < gzip.patch $ ./configure --prefix=/usr/local $ make && make check $ sudo make install
CFLAGS
はお好みで。
ATI Radeon 用公式ドライバ for Windows 2k/XP。 約 1 ヶ月ぶりの version up。
QuickTime 形式のメディア・ファイルを再生するライブラリなどの詰合せ for Windows。 約 1 ヶ月ぶりの version up。
Linux 上で動く快適なデバッグ・プロファイリング用ツール。
事前に GLib 2, libiconv, gettext をインストールしておくこと。
$ wget -c ftp://ftp.gnome.org/pub/GNOME/sources/libIDL/0.8/libIDL-0.8.7.tar.bz2 $ bzcat libIDL-0.8.7.tar.bz2 | tar xvf - $ cd libIDL-0.8.7/ $ ./configure $ make && make check $ sudo make install
CFLAGS
はお好みで。
美しい GUI を持つ多機能と軽快さを兼ね備えた message user agent。 安定版。
MMX や各 SSE, 3DNow! などをサポートした 80x86 環境向けアセンブラ。 約 1 週間ぶりの version up。
11/15 発売予定の新作。 遂に 10 枚目か…。
c-indent-command
の挙動がおかしい
develock-mode
使用時と非使用時で、
c-mode
の c-indent-command
が異なる挙動を見せる
(使用しているスタイルに依存)。
具体的にはコメント行の扱いが問題なんだけど、とりあえずこんな感じの修正で良さそう。
…いやあ、…久々に develock.el を読んだ。
--- develock.el.orig 2006-09-23 18:45:18.000000000 +0900 +++ develock.el 2006-09-23 18:44:03.000000000 +0900 @@ -1615,7 +1615,7 @@ (looking-at "[\t ]*") (or (setq mod (buffer-modified-p)) (setq orig (match-string 0))) - (delete-region (point) (match-end 0)) + (tabify (point) (match-end 0)) (develock-Orig-c-indent-line syntax quiet ignore-point-pos) (setq pt (point)) (or mod
作者の山岡さんには報告済み。
火曜日だけ本社で、残りの水曜日〜金曜日は大学で作業。 新人のフォローに時間をとられた結果、思う様に作業ができなかったけど、 それを想定して事前に作成した某 Ruby スクリプトで最低限の成果は出せたつもり。 …って、やっぱりちょっと時間かけ過ぎだよな。 放置するなど手抜きするのは良くないけど、もうちょっと効率良くやらないと。 ;-(
C と C++ の選択で悩む。 引き継ぎの関係を考えると、今の会社で C++ を本気で使うのは正直危険だと思う。 でもやっぱり C++ の方が好きなんだよなぁ…。まあ、もう少しじっくり考えよう。
ああ…、疲れた…。改めて将来を考えなくっちゃ…。
MMX や各 SSE, 3DNow! などをサポートした 80x86 環境向けアセンブラ。
Ruby で書かれた spam フィルタリング・ツール。
Mac OS X ならそれなりの速度で動きそうだなぁ…。 時間を作って試してみるか。
ミナミに行って買い物した。 行く前は CD を買うつもりだったのに…。
正規表現の本は 木村さんのと どちらにしようか迷ったけど、僕は Ruby (と elisp) を中心に使うので…。 残念…。
RDT197S は、店頭での印象より、自宅で使ってみてからの印象の方が良い。 これに繋げる環境がかなり貧弱なことなんですけどね。問題は。 ;-(
ちょっと前の 木村さんの雑記から。 メモ。
関係ない話だけど、最近、CPU の特性みたいなものを知る機会があった。 僕のコーディング・スタイル (というか、普段の表現のパターン) が Netburst 系で不利なことがよく分かったんだけど、 今更 Pentium D 買っていろいろ試すのも辛いので、とりあえず忘れることに…。
これも木村さんの雑記 から。 “オープン・ソース = 趣味のプログラミング”としか 考えられない人 (ソフトウェア・エンジニアの中にもけっこう存在する模様) じゃ たぶん理解不可能だろうね。
非常に有名な MP3 エンコーダ。 かなり久々のバージョン・アップ。
開発者向けに font-lock のキーワードを追加する elisp。 約 2 ヶ月ぶりの version up。
先日のパッチを取り込んでいただきました。 快適。 :-)
Debian の BTS の方も大橋さんに対応していただいた。 とりあえず一段落ついたって感じ?
Windows では定番のメディア・プレーヤ Winamp を日本語化するキット。
美しいペン習字風 font。
オリジナルの手書き風フォント。 約 3 週間ぶりの version up。
3.96.1 の時と一緒。 事前に libsndfile を入れておいた方が良い。
$ wget -c http://jaist.dl.sourceforge.net/sourceforge/lame/lame-3.97.tar.gz $ zcat lame-3.97.tar.gz | tar xvf - $ cd lame-3.97/ $ ./configure --enable-decode-layer1 $ make && make test $ sudo make install
もちろん CFLAGS
はお好みで。
定番の multi platform な web browser。 所謂人柱版。
multi platform な web browser, Firefox の日本語版。 所謂人柱版。
Apple 社が公開しているジュークボックス・ツール。 約 2 週間ぶりの version up。
skin により見た目を変えられる多機能なメディア・プレーヤ for Windows。 約 3 ヶ月ぶりのversion up。
Windows では定番のメディア・プレーヤ Winamp を日本語化するキット。
MMX や各 SSE, 3DNow! などをサポートした 80x86 環境向けアセンブラ。
今更だけどメモ。 そのうち読む。
こちらも後で読むためにメモ。
同上。
自分のため (だけ?) に、 GNU Emacs 19.29 に対応した elisp の日本語リファレンス文書を公開しました。 ついでに GNU Emacs 20.3 に対応したものも更新しました。 nkf で作成した UTF-8 の .texi ファイルに、texi2html を適用、 最後に sed で charset を変更する形で作成しました (手抜き)。
後者に関しては、パスの変更がありましたので、 リンクをはって下さっていた方はご注意を。 とりあえずは転送するようにしておきましたが、 それもそのうち止めるかもしれませんので。
今回も 土屋さんのパッチを 使わせていただきました。 感謝。
角藤先生の日本語パッチを適用して組んでみた。 事前に iconv, gettext をインストールしておくと吉? かな?
$ wget -c http://ring.astem.or.jp/archives/GNU/texinfo/texinfo-4.8a.tar.bz2 $ bzcat texinfo-4.8a.tar.bz2 | tar xvf - $ cd texinfo-4.8/ $ wget -c http://ring.astem.or.jp/archives/text/TeX/ptex-win32/utils/texinfo-4.8-j.diff.gz $ zcat texinfo-4.8-j.diff.gz | patch -p1 $ setenv CFLAGS "-O2 -DEUC=1" $ ./configure --disable-nls $ make && make check $ sudo make install
もちろん、CFLAGS
は好みでもっと豪華にしても良い。
美しい GUI を持つ多機能と軽快さを兼ね備えた message user agent。 開発版の人柱版。
マルチ・プラットホームの総合開発環境。 約 3 ヶ月ぶりの version up。
DOS や Windows 上で動く x86 環境向けアセンブラ。
ミュージックマシーン経由で。 ASIAN KUNG-FU GENERATION の後藤さんが良いこと書いてる…。
特に何も考える必要はない。
$ wget -c http://swiss.csail.mit.edu/ftpdir/scm/slib3a3.zip $ unzip slib3a3.zip $ cd slib/ $ sudo make infoz $ sudo make install
事前に SLIB, iconv をインストールしておくと良い。 Xcode 2.3 以前なら以下の手順でいけるはず。
$ wget -c http://jaist.dl.sourceforge.net/sourceforge/gauche/Gauche-0.8.7.tgz $ zcat Gauche-0.8.7.tgz | tar xvf - $ cd Gauche-0.8.7/ $ ./configure --enable-multibyte=utf-8 --enable-threads=pthreads --enable-framework $ make && make check $ sudo make install
もちろん CFLAGS
はお好みで。
僕の環境では、「何ごともなくインストールできた」と思ったら、しっかり make check でエラーが出てた。 どうも Xcode 2.4 で起こる GC ライブラリ周辺の不具合らしい。
Xcode 2.4 だと Boehm-GC library の 最新リリース 6.8 や開発版の 7.0 alpha 7 もコンパイルできないみたいだね。 これはお手上げ?
Mac OS X 10.4 系のアップデート・プログラム。
軽快な pager 兼 web browser である w3m の多言語拡張版。 約 21 ヶ月ぶりの version up。
レンダリングに Gecko エンジンを利用した web browser。 1 ヶ月ぶりの version up。