22:55 02/02/04

今日はとっても森首相気分。

Win32 Resource File Format なんてのを探し当てて照らし合わせてみたら、プライマリの LanguageID はちゃんと 0x11 (日本語) になってました。 そこまでやっておきながら、実際の文字列の格納は char の値を16bitに単純拡張しただけの並び。謎だー。

網膜に直接映像を投影って、 なんかサイバーちっくなことに使えないだろうか。

11:34 02/02/04

Digital Mars のリソースコンパイラが日本語化け化け。 -j オプションなんてのでちゃんとShiftJISに従って 解析するようには出来るのに、何故か最後にUnicodeに変換するところでアウト…。 誰か情報持ってたら下さい。

一口メモ:DOS窓が出ないようにするには -L/SU:windows でコンパイル。

17:00 02/02/03

Linux(カーネルだけ)を創ったのはLinus氏だけれど、

たしかに、Linux というものは存在します。それはカーネルであり、人びとはそれを使っているのです。しかし、カーネルをそのものだけで使うわけにはいきません。カーネルはオペレーティングシステム全体の一部として初めて使えるようになります。Linux は通常 GNU オペレーティングシステムと組み合わせて使われます。システム自体は基本的には GNU で、カーネルとして Linux が機能しているのです。

cite: Linux と GNU

その周辺のシステムを作ったのはGNUプロジェクト、という主張だそうな。 >びいさん
Windowsは GNUソフトウェア 無しでも全く普通にWindowsですし、OpenBSDやNetBSDも、GNUソフトウェアを抜いたら カーネルが丸裸になっちゃう、ということはないんじゃないでしょうか。 私自身はLinuxも*BSDも触ったことがないので、真偽のほどはわかりませんが。。。

それにしても

オペレーティングシステムとは単にカーネルのみではありません。オペレーティングシステムはコンパイラ、エディタ、テキストフォーマッタ、メーラなどその他の多くのものをも含んでいるのです。

cite: GNU プロジェクトの概要

やっぱりブラウザはOSの一部なのか。(´Д`)

22:22 02/02/02

ににににーににーに。

Extreme Programming vs. Interaction Design

…つまりは ケント・ベック氏とアラン・クーパー氏が語り合う、という面白そうな企画っぽい。

そう」とか「ぽい」というのは要するにその、『とりあえずお気に入りに登録したはいいが なんかやけに長いのでそのまま放置して結局読んでないページ殿堂』から 引っ張り出してきたということの現れなのですが気にしないように。

OLS

昨日見つけた ProcessProbe というプロセスビューワ、情報が見やすくて素敵。

21:35 02/02/01

第一次テストラッシュ突破。これでだいぶ時間的に余裕ができました。 ちなみに第二次は来月頭から…って誰も聞いてないですね。

google から "Wireless Intellimouse Explorer" を検索してここに 辿り着かれた方がいるのをアクセスログで見て気づいたのですが、そいえば私、 電池切れかけたっきり使ってません。今は元の普通のインテリマウス。 新しく電池買ってきたのはいいんですけど、何だか勿体なくて。

アクセスログと言えば、"殺" と一文字で検索してきた人の真意が知りたい。

16:49 02/01/31

コンパイラ&オプション: g++ -ansi [ファイル名]。まず準備して

template<class T> struct a { operator int(){ return 0;} };
struct xml { xml(const char*){} };
struct html { html(bool){} };
const int DOCTYPE = 1;
#include <iso646.h>
int main() {

次に

<%xml version="1.0";%>                                   0
<!DOCTYPE; html PUBLIC                                   =
    "-//W3C//DTD XHTML 1.1//EN"
    "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">      0
                                                        ;a
<html>
    home; return home
<//html>
                                                       1;}

トライグラフ ってのは知ってたけど、C++標準には digraph なんてのもあるんですね。今日初めて知りました。 で、知った瞬間に思いついたのがこれ。 …もしかして、こんなんばっかり考えてるからマトモなコードが書けるようにならんのだろうか。

右端に見えるゴミは何だとか、なんかセミコロンが混じってないかとか そもそもXML宣言は<?と?>だろとか xmlnsはとか bodyタグの省略はXHTMLではとか inline要素がどうのなどの突っ込みはまとめて却下という方針なのでご了承下さい。

08:26 02/01/31

今度こそ、近日中にあれをバージョンアップできそうなので、 それに伴ってこれとそれも更新の予定…。

Unrar32.dllのlzh-sfx型パッケージが用意されたりunrar.dllがそれに同包されてたり、 という諸々に対応すべく久しぶりにcaldixのソースを見ていたわけですが、なんか 果てしなく場当たり的なプログラムですな。メンテナンスするの嫌になってきました(笑)。 全く、誰ですかこんなの書いたのは。

…自分か…。

20:22 02/01/29

ピークが試験時間に来るよう狙いすましたかのように風邪がぶり返して大変だったのですよ。 これで単位来なかったら泣ける。頭痛いぃ…。

>幽仙庵主
キミのことだから当然気づいてるとは思いますが、ここ10日ほど既に一人でやって ミス1してたり。つーわけでせっかくだから、 このまま継続して参加しましょう。 ただ、ですます調以外の文体だと普通に簡単なので、どうしたもんでしょうかね。思案中。

21:13 02/01/28

個人的に最も好きだったOS。Palm社に身売りしてサイトも休業状態で、 もうダメかと思っていたら… …なんと OpenBeOS なんてプロジェクトが発足してたとは。いいねいいねいいね!

参加したいところなのだが、残念ながら英語力もプログラミング能力もOSに関する知識も全然足りない。 よっしゃこれから頑張るぞ。目標が出来た。

22:38 02/01/27

最近エアコンの効きが悪いなぁ〜と思って蓋を開けて中を見てみれば、 フィルター地方の積雪は3mmに達する見込みですって勢いで、もう埃で向こうが 見えない状態なのでした。目に見えないトコは掃除忘れてても気づかないね。

Digital Mars C++ に shell32.lib が用意されてないので、自分で作らないといけない模様。 implib だとどうもうまく行かない。stdcall的名前になってくれない。 PlatformSDK のを引っ張り出して coff2omf とかやってみたけどダメ。 仕方ないからダミーDLLをコンパイルしてインポートライブラリだけ使うか。

20:00 02/01/26

実験。要はtemplateでフィボナッチ数列、という有名なネタと同じことなのですが

struct Null { enum {
	Length = 0,
	Sum    = 0,
	Max    = -2147483647,
	Min    = 2147483647,
}; };

template<int car, class cdr> struct cons { enum {
	Length =  1  + cdr::Length,
	Sum    = car + cdr::Sum,
	Max    = car > cdr::Max ? car : cdr::Max,
	Min    = car < cdr::Min ? car : cdr::Min,
}; };

#define list_1(a)               cons< a, Null >
#define list_2(a,b)             cons< a, list_1(b) >
#define list_3(a,b,c)           cons< a, list_2(b,c) >
#define list_4(a,b,c,d)         cons< a, list_3(b,c,d) >
#define list_5(a,b,c,d,e)       cons< a, list_4(b,c,d,e) >
#define list_6(a,b,c,d,e,f)     cons< a, list_5(b,c,d,e,f) >
#define list_7(a,b,c,d,e,f,g)   cons< a, list_6(b,c,d,e,f,g) >
#define list_8(a,b,c,d,e,f,g,h) cons< a, list_7(b,c,d,e,f,g,h) >
#define set( name, list )       typedef list name

#include <ostream>

int main()
{
	set( MyList, list_8( 100,47,68,-25,71,9,140,-37 ) );

	std::cout
		<< " Length=" << MyList::Length
		<< " Sum="    << MyList::Sum
		<< " Max="    << MyList::Max
		<< " Min="    << MyList::Min
	<< std::endl;

	return 0;
}

うむ。素敵にバカっぽいですな。

やっぱり int の list じゃなくて type の list じゃないと無意味だ…。

13:58 02/01/26

風邪。頭痛い。

google が若干行間空けて見やすくなったような気がする。 たぶんデータベースも更新されてるだろう、と推測してとりあえず XacRett で検索かけてみたら VCオープンソースホームページ一覧 なんての発見。

受け取る英語メールがことごとくHTMLなので、HTMLメール反対〜なんて言ってるのは 日本列島ローカルなのか?と思ってみたりもする今日この頃なのでありますが、 どっちにせよ、フォント弄りも画像貼り付けもしてないのに無駄にHTMLなメールは私はキライ。

23:39 02/01/21

迷走?

薄々予想はしてたけど、やっぱりVC++で loki がコンパイル出来なかった。部分特殊化って VC++.NET ではサポートされてるんだろうか。 はてさて。

とりあえず手元にあったアーカイバ全部で (scan) を試してみるテスト。 8割方成功くらいじゃ汎用性ありと認めてもらえないのかぁ…(T_T)

22:11 02/01/20

近所の図書館が蔵書整理で休館だそうな。さて読み物無しでこれから一週間、 行き帰りの時間をどうやって潰そう。瞑想でもするか。名僧が瞑そ(

ブレークポイント

それって強制終了した時「ブレークポイント例外」とか「ソフトウェア例外03H」とかでてませんか。

私は、最適化掛けないと再現しないバグとか、デバッガに掛けていると発生しないバグが出た時などにDebugBreak()を呼び出しておいて、むりやり止めてからデバッガをアタッチするという手段を使っていました。

コレをやるとブレークポイント例外03Hが報告されるはずです。

cite: 日記。

あぁ!それ、それっぽいです。なんか強制終了画面が最近 やけに情報不足(#) なのでそっちだとわからないんですが、 VC++の混合モードで見ると止まったところの命令が int 3 でした。 …ということは、ソレを仕掛けっぱなしのままリリースされてしまってるってことでしょうね。 むぅ。

# どっか弄ったかなぁ。もとからWinMeのってこんなだったっけ。

17:30 02/01/20

もしかして fub兄やん スゲー最高。
・F1が元々フォーカスセットとして存在するのですが、暫定的に画面上表示領域内の先頭のリンクにフォーカスをセットするようにした。

これから使いまくってみる予定。

21:03 02/01/19

Noah 3.10β2

PeekNamedPipe という名のAPIで名前なしパイプのデータを覗けるとは奥が深い。

SPAMを「Subject: に "!広告!" を含む」という条件一つで仕分けられるように なったのは結構ありがたい、と思ったりする今日この頃。甘いかな。

16:20 02/01/19

「∀データ ∃アルゴリズム(圧縮可能)」≠「∃アルゴリズム ∀データ(圧縮可能)」

さて Noah 3.10β1

自分の手元以外の環境で動く気が全くしないのだが、大丈夫だろうか。

21:24 02/01/18

こっそりこっそり。

デバッガを走らせると「ブレークポイントの設定位置0xcfdf7a」とのたまって UnaceV2.dll 内部で停止。 そこから実行再開すると、強制終了等せずにそのまま解凍完了。 でも普通に真っ直ぐ動かすとやっぱり強制終了。謎だ。 てゆーかなんでそんなところにブレークポイント?

00:41 02/01/18

フリーだからって言う人嫌いです。なんちて。

cab圧縮時、状況によっては余計なファイルを格納してしまうバグ修正用 cab.b2e。 このためにわざわざ (resp@) を作ったと言うのにすっかり書くの忘れてました。 使うときには Kill=C をお忘れ無く。

load:
 (name Cab32.dll)
 (type cab MSZIP *LZX21)
check:
decode:
 (cmd -x (arc))
decode1:
 (cmd -x -i -o (arc) (list))
encode:
 (cmd -a (if (method 1) -mz -ml:21) (arc.cab) (resp@ (listr)))
sfx:
 (cmd -f (arc))

書庫検査ってどんな時に使うのかよくわからんのだけど、とりあえず 「俺はエラーなく書庫が完成したかどうか圧縮のたびに毎回チェックする主義だ」 というくらいの人にならこんな手があります 7z.b2e。

load: 
 (name 7za.exe)
 (type 7z LZMA PPMd bzip2)

decode: 
 (cmd x (arc)) 

encode: 
 (if (method 1) (cmd a -t7z -r0 -m0=LZMA (arc.7z) (list\*))) 
 (if (method 2) (cmd a -t7z -r0 -m0=PPMd (arc.7z) (list\*))) 
 (if (method 3) (cmd a -t7z -r0 -m0=BZip2 (arc.7z) (list\*))) 
 (xcmd command.com /k 7za.exe t (arc.7z))

つーかやっぱり、中身の閲覧とか、細かい書庫操作とかが主な操作なら、 Noahは選ぶべきアーカイバではないと思うのでありますよ。 「出来る」と「向いている」は違う。

20:25 02/01/17

J-COM Net下り8Mbps、上り2Mbpsに」 2002年2月1日から。

今気づいた。よっしゃナイスだJCOM。

00:07 02/01/17

今日から少しは暇かと思ったらまた忙しいのであります。エディタに手を付けてる時間が全くない…。

だんだん面白いことになってきましたね。 あははーっ。

21:32 02/01/15

正解はどちらなのかは知りませんケド。

タブの文字数ってのは、行の先頭からの文字数で決まるんじゃないの?
折り返しの先頭からの文字数で決めるのはおかしいんじゃないの?

cite: 日々のつぶやき

私の感覚では、タブって 『\tってコードが来ると表示領域の左から32pixel毎とか56pixel毎とかに存在する見えない線に揃えて仕切り直す』という感覚で描いてます。 その行の何文字目だからタブの幅はこう、というよりは、現在の描画位置がここだからタブの幅はこう、という感じ。 折り返しが入るとそこで画面の左端に戻るので、また改めてそこから32pixelごとのラインに揃えてしまう。

22:01 02/01/14

成人式。高校の途中辺りで引っ越してきたため、今住んでる柏市の方に行っても誰一人として知り合いがいないので、 昔の居住地に戻って参加しました。5年ぶり8年ぶりに会ったヤツがほとんどでしたが、全然変わらないね。懐かしい。 ときに一人やけに首が太くなってたのは、ありゃ何をやってるんだろう。訊きそびれた。

変わらないように見えて、でも、皆それぞれの道を歩み出してるわけで。 そんなお互いを確認して、まぁ自分も自分の道を進んで行こうと心に思う、 それが成人式の意義なのではないかなぁとか考えました。 以上、綺麗事終わり。

今回は新成人から出したボランティアスタッフが運営してたらしいのですが、 うまいことまとまってたし、中身コンテンツも、 場に合った良い感じなもので、すげーなーと思いながら式に臨んでました。 私が企画立案実行したんじゃ、ふつーに成人式を成功させることさえ出来なかっただろうからねぇ。 ただそれだけに、閉幕のときの「新成人が自分たちの手で作り上げた式だから他とは違って云々〜」 なんていうアホなセリフが残念でした。あんたら、先生におだてられて喜んでる小学校の児童会か何かか? あと市長の挨拶、あんなウケを狙ったような媚び方でいいんだろうか。 元々あんなキャラだったかどうかはさっぱり忘れたけど、いずれにせよ格好悪い。

23:32 02/01/13

UnaceV2.dllの最新版をNoahで使うと落ちることに気づいた。 見たところヘッダファイルに変更はないから、DLLの扱いを変える必要は無いはずなのに。。。 今週の水曜のえーごの試験が終わったら追ってみます。

18:26 02/01/13

マウスの電池を長持ちさせるべく、かちゅ〜しゃ総キーボード操作化計画実行中。 (動かさないで置きっぱなしな間は省電力モードになるらしいので。) これで普段使ってるソフトのうち鼠無しじゃ不便なのはブラウザだけになった。 そして、何だか本末転倒なことをしてる気がちょっとだけしているのである。

IEに「画面に表示されている範囲内で一番上にあるリンクにフォーカスを合わせる」ような ショートカットがあると便利だな。

話は変わって、引用のテストも兼ねつつこの前の 1/100圧縮の話 の続きでも。 「breakthrough to the historical limitations」ってところは、やっぱり

ZeoSync's assertion that it has overcome fundamental constraints in information theory, defined by Claude Shannon more than 50 years ago.

cite: The Register

こう読むのでしょうか。そーだとしたら流石にダメだ。却下。(通信路or情報源)符号化定理が覆せるなら パパ背理法で 1+1=2 という定理も覆しちゃうぞーって感じ。 そこいらのデータを何百分の一に圧縮できたからって、 別に情報理論の基礎がどうこうという話に発展させる必要は全くないと思うんだけどねぇ。

00:08 02/01/13

うあー。もう電池が不足してるとかいいやがった、このマウスめ。

さて、また改装しました。配布書庫の大部分を7-zipに切り替えたり、怪しい英語ページを増やしてみたり、 棚から出てきたフロッピーにTextSmileとかFum!!とかのソースが全部入ってたので せっかくだから全部公開してみたり。

あと、別の意味で低レベルすぎたやりこみコーナーを削除。 この達人達 を追い越せる日が来れば、その時に復活するつもりではある、が、果たして。。。 代わりに新しいページを何か作ろうかと思ったんだけど、特に面白そーなのも 考えつかなかったので、今回は無しということに。

スタイルシートは IE6, Mozilla0.97, Opera6 でしか表示確認取ってません。 IE4,5辺りで見ると恐ろしいことになったりするような気もします。主にトップページが。 あまりにヤバいようでしたら代替スタイルシート書きますのでご一報下さい。

presented by k.inaba (kiki .a.t. kmonos.net) under CC0