24 時間リレーマラソン (16 日正午〜17 日正午) に参加してきた。 とても楽しかったです。
1 日目は強い陽射しが照りつける中で、2 日目は穏やかな陽射しの中でたすきを繋いだ。 1 周 1.7km のコースを順に走ったので体力的な問題はあまりなかったけど、 24 時間という長時間のレースは普段それほど走り込んでない僕にとってはきつかった。
1 日目の夜から 2 日目の朝に走っているとき、右膝の間接に痛みが出てきて、 途中から右足をきちんと伸ばして走れなくなってしまった。 これのせいでペースはガクッと落ちるは、変に疲れるはで…本当に大変だった。 左脚のすねの筋をかばったのが原因かなぁ…。
現在、spam 処理に疲れて非表示にしております。 ですが、ポストしていただいた内容にはちゃんと目を通してますので、 非表示でも構わないとお考えくださるのであればツッコミを入れてください。
少し前に出た Boehm-GC ver.6.8 を Mac OS X 10.4 で使ってみた。
まずライブラリ自体の組み立て。
もちろん CFLAGS
などはお好みで。
$ wget -c http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/gc6.8.tar.gz $ zcat gc6.8.tar.gz | tar xvf - $ cd gc6.8/ $ ./configure --enable-cplusplus $ make && make check $ sudo make install
で、とりあえず以下みたいな感じで使えるんだけど、
最初、GC_INIT()
は要らないと思っていて、少しハマッた。
/** * @file main.cpp * @brief Boehm-GC の C++ による実装サンプル */ #include <iostream> #include <gc_cpp.h>
using std::cout;
class Dummy : virtual public gc_cleanup { private: const int integer_; char values_[1024 * 1024 * 4]; public: inline Dummy(const int integer = 0) : integer_(integer) { cout << "コンストラクタ呼び出し (" << integer << ")\n"; } inline virtual ~Dummy(void) { cout << "デストラクタ呼び出し (" << integer_ << ")\n"; } };
int main(void) { GC_INIT(); // Mac OS X でも必要っぽい Dummy* dummy = 0; for (int i(0); i < 100; ++i) { try { dummy = new(UseGC) Dummy(i); // UseGC は冗長 } catch (...) { // これで良いのか? dummy = 0; cout << "メモリ確保失敗 (" << i << ")\n"; } } return 0; }
g++ -Wall -I/usr/local/include -L/usr/local/lib -lgc main.cpp で組み立てる。 うーん、デストラクタの呼び出し回数が足りてないなぁ…。 面倒臭いけど、ちゃんとドキュメントに目を通さんとダメだね。 :-(
久々に Zsh 使ってみたくなったのでメモ。 Zsh も 4.3.X なら UTF-8 環境で日本語を (まともに?) 扱えるらしい?
zsh に関する情報を集積することを目的として作ってみました。
定番の Scheme interpreter。 約 7 ヶ月ぶりの version up。
Mac OS X の launchd 設定ファイル編集ツール。 約 9 ヶ月ぶりの version up。
tekezo さんの日記。 後で試してみよう。
メモ。 後で読む。
これ、野村総研さんの独自性はどれ位のものなのだろう。
定番の multi platform な web browser。 約 1 ヶ月ぶりの version up。
定番の multi platform な web browser。 メンテナンス・リリース。
非常に高機能な画像処理ツール。 開発版としては約 1 ヶ月ぶりの version up。
定番の multi platform な web browser。
Windows では定番の message user agent。
可搬性のある Emacs Lisp program の作成を支援するための library。
MMX や各 SSE, 3DNow! などをサポートした x86, x86_64 環境向けアセンブラ。
UNIX 系 OS 上で動く Windows API の実装。 安定版。
MITLM のコードをいじった際に気付いたのだが、
Mac OS X 上で popen(command, "wb")
や popen(command, "rb")
のようにバイナリの読み書きをしようとすると、
エラーが発生する (確かに正しい動作なんだろうけど…)。
とりあえずサンプル・コードを用意してみた。
Windows 上で動くシンプルな CSV エディタ。
仮想 x86 環境。
非常に多くのフォーマットに対応したマルチ・プラットホームのメディア・プレーヤ。
CFLAGS
はお好みで。
$ wget -c http://ftp.gnu.org/gnu/gcal/gcal-3.6.1.tar.xz $ xz -cd gcal-3.6.1.tar.xz | tar xvf - $ cd gcal-3.6.1/ $ ./configure $ make $ sudo make install
非常に有用で高機能な C++ ライブラリ群。