netail.net
自作フリーソフトや,ゲームに関する雑記を公開してます.
日記はソフトウェア工学の論文ネタが中心です.
最近のお知らせ (古いものはこちら)
2002-12-13 古い日記からの変換データ ▲
2004-12-13 古い日記からの変換データ ▲
_ [work]データ依存解析 ▲
java.util.Date.parse(String) メソッドでスライスツールが落ちるので調べてみたら,約1000命令のうち,分岐命令が79個.ローカル変数が19個,スタック最大深さが7なので,分岐命令ごとにフレームを複製して合流地点でフレームの同一性をチェックする(解析済みの状態と同じ状態が到着したら捨てる)という現在のアルゴリズムだと,組み合わせ爆発が起きているっぽい.26個も変数の状態が一致することのほうが少ないだろうし….
追記:制御フローを見てみたら,分岐→合流→分岐→合流という感じの流れになっていたので,2のN乗(N=分岐数)にかなり近いような状態になっていた様子.というわけで,アルゴリズム差し替えの予定.
2005-12-13 ▲
_ コントロールパネルのアイテム ▲
「オーディオとマルチメディアのプロパティ」なんかをプログラムから開くのはどうするんだろう,と思っていたら,@ITにコントロールパネルのアイテムをコマンドラインから呼び出す方法の解説が書いてあった.ボリュームコントロールを開くのは sndvol32.exe でいけるので,これで実質オーディオアイコンと同等の役割を果たすことは可能だと思われる.
こういう実装を選ぶと,Windows のファイル名に依存してしまうが…….
_ 複数の enumerate 環境のカウンタを継続する ▲
LaTeX で,途中で見出しを入れるとどうしてもenumerate環境が途切れるので,無理やりカウンタ値を保存して継続することにしてみた.
\newcounter{preserved} % 保存用カウンタを宣言 \begin{enumerate} \setcounter{enumi}{\value{preserved}} % カウンタ値を復元 \item アイテム群を書く \setcounter{preserved}{\value{enumi}} % カウンタ値を保存 \end{enumerate} \begin{enumerate} \setcounter{enumi}{\value{preserved}} % カウンタ値を復元 :