過去のろくでもない雑記をみたい方は try13.html以下へ とっととルートに逃げたい方はindex.html

Averageのアマグラマな生活と意見

06月15日のアマグラマな生活と意見

◆砂糖をとるとアウト

な体質にワタシもなりました。甘いものを食べるといきなり心臓が苦しくなるのですよ。胸も日常的にキリキリ痛くなるし。原因ははっきりしていて、「寝不足」の一語に尽きます。しかもコレ、土日に寝だめをしても回復しない(十分じゃない)のですよ。やっぱり毎日11時には寝る生活にならないと。

それにはまず、君のプレステを捨てる必要があるだろうな>Average君

うーんと、えーと、プレステをステというハナシですけど、Cygwin+rxvtまでやるなら素直にVirtualPC入れてUnix入れた方が早そうな風味ですがいかがでしょうか。とハナシをそらしてみるテスト。

◆SibylのAnsiString

メモ:どうもSibylのAnsiStringはPChar(いわゆるCのchar *って奴)で実装しているようだ。AnsiStringを通常のString型と置き換えて使うと必ずWPSを道連れに死んでくれる様だ。DOMライブラリが動かないのもそれが理由であろう。

伸長する文字型Object(classだと必ずヒープに実体が出来るので不可)を実装する必要があるようだ。ひええええええ(大泣き)

早くFreeSibylが出来上がって欲しい物だ。

実際sibylのライブラリをFreePascalでコンパイルできるように今条件コンパイル文を入れてテストしています、FreeSibylのグループは。

◆TP560の底力

故あって、今のWebページを書いているマシン、TP560を引退させようかと思っていました。だって、電池が逝かれていて、停電があると内容がパーになるという非常に味のあるノートになっていたからです。

という事で、ツテを頼ってTP600を入手したとおもいねぇ。このTP600,メモリ、CPU、HDD総てにおいてわが家では「最強」というマシンなのですよ。で、まぁVIOとDOSの窓が死ぬほど遅いとか、色々あったんですが、とりあえず、環境を構築して使えるようにしたと思いネェ。

その途端にTP560君、いきなりバッテリが復活ですよ、ええ。

そうか、君はそんなに首が恐いノカ>TP560

◆おしかけ厨のハナシ

ナウなヤング(死語)の間で押しかけ厨のハナシが盛り上がっている風味だが、なんであの程度の分析で盛り上がるノカさっぱり分かりません。そんなに押しかけ厨って盛り上がれるハナシなの?
精神分析風味ってのはワタシが高校生の頃、岸田秀、河合隼雄等がブームとなった事があって、ハマッた事のあるワタシらにとっては、「だから何?」って感じでしたが。もっと病的な症例とか腐るほど出てましたからねぇ。

元々精神分析ってちゃんとした医療行為ではないし、世間に適応出来ない(しない)人間に対して、ただ「世の中に適応させる」という一点を目的として存在している医療行為だもんですから、「正解」を探す商売じゃない訳です。じゃなくて「あなたは悪くない」というメッセージを対応者に「納得できる形で」渡してあげるっていう商売ですぜ。

だから精神分析系の人ってのは「正しいからOK」とは言わない訳デスヨネ。じゃなくて「こういう概念を採用するとあなたトクしますよ」と言っている訳。だいたい「正しい」ってなんだよ。江戸時代位の農村ってのは「自由恋愛」ってのは社会の構造を脅かす危険思想だった訳ですが今は「自由恋愛にあらざる者に死刑を」ってな感じでショ?

だから、オレWebで「議論したい」って人がいまいちよく分からない。大体彼らは「自分が正しい、故にお前はオレに従うべきだ」という事をただ遠回りに言っているだけとしか思えない。トクに「お前はオレに従うべき」がポイントなんとちゃうかと小一時間・・・(後略)
じゃなくて、人を説得する場合「この概念を採用するとこんなにおトク」というハナシにするべきなんだよ。人がある意見を採用する場合それはその意見が正しいからじゃなくて、それを採る事がおトクだからだと思うがどうか。

余談だがワタシはその手の言説を聞く度に正反対の意見を持ってしまうのですが、それはおそらく「お前はオレに従うべき」風味に過剰に反応してしまうからなんでしょうね。頼むからオレのことならほっといてと叫びたいひとなのです。ハイ。

06月08日のアマグラマな生活と意見

◆モジュールと継承

こちら(urlはhttp://www.ogis-ri.co.jp/otc/hiroba/technical/MixJuice/index.html)の「オブジェクト指向は間違っていた」という文書を読んでくださいませ。まずは。

読みましたね?

で、ですね。これ、正に我が意を得たり、です。鼻血ブーもんですぜ。で、なんでこんなに喜んでいるかと言いますと、ワタシの直感ではどうも世の中の仕組みを表現する際にツリー状の分類方法ってあんまり有効じゃないと思えるからです。

で、この「ツリー状に万物は分類できる」というセンスってのは横書きの文明から生まれるものではないかと。というのも縦書きでインデントするってのは実用的でないフォーマットですし、実際、ツリー状に分類するというセンスって縦書きの文明には見られない気がしますな。という事で、実はWeb掲示板等で意見を闘わせている愛国者って、横書き文明に毒されている訳で(だってWebって本質的に横書き文化だし)こういう集団を見ているとワタシどうも「Web文化に浸っている人が本当に日本人と言えるのか?」と疑問に思っています。

念の為いっときますけど、ワタシは別に本当の日本人とは誰か、なーんてどうでもいいんですが。ワタシも横書き好きだし。(これはこれで別に論じる予定。予定ばっかだな>ワタシ)

閑話休題。話を元に戻して。
うまく言えないんですが、現実の様々な事象ってのはツリー分類的な構成じゃなくてもっと混沌としたものでは無かろうか、という事なんです。オブジェクト指向によるキモってのは全ての物がツリー状に分類できると言うセンスに還元できる事だと思うのですが、これでプログラムしているとどうしてもあちこち歪みが出て来ませんか?あるいは自然にクラス階層を作る事が出来なくてデザインパターンみたいに、ある機能を実現するのに不自然なファイル構成をとらなくてはならない、ような。

で、実際自分が書いている場合、確かに小さいレベルだといいんですが、かなり大規模なソースのレベルになると、クラス定義と実際のメソッドを使う局面がかなり離れてしまったりして、どうも書きづらい、へんだなぁ、と思っていたのですが、MixJuiceのモジュール指向という考え方を見て、がーん、となりました。

あ、ワタシの大規模って大体2000行以上って事ですが。笑うなッ(ワラ

そうなんだぁ。クラスという継承の方法、と機能の実現という意味でのモジュール化ってのは両立するハズが無いのである。そもそもクラス定義とモジュール化というものは直交する概念なのであるから。

MixJuiceの意義ってのは、この「クラス定義とモジュールが直交する概念だ」と喝破した所にあるのではないでしょうか。

で、余談だがこういうのがコンピュータサイエンスのセンスというものではないのかな、等と思うのであった。センスという内容についてはhttp://nicosia.is.s.u-tokyo.ac.jp/pub/essay/hagiya/h/tensaiを参照してみてください。こちらも面白いです。ちょっと古い(初出は確か1980年代後半だと思いました)ので、例として出て来るブツがみな古いのが難点ですが:-)

◆縦書きの意義・横書きの理由

そうそう、横書き、縦書きでこんなに書き方が変わる、という話。

まず、縦書きだと「段落」という概念が発生しにくいと思います。というのも、縦書きだと行を空けて「視覚的アタック」をしかける事がかなり難しい。比較してもらうと分かるのですが、縦書きだと行空けがあんまり「視覚的アタック」として機能しません。昨今のライトノベルで「視覚的アタック」として行空けを多用しているんですけど、文庫で読むとあまり機能していないのがアリアリだったりする。

元々、段落という概念自体が日本にはありませんでした。理由は案外こういう行空けによる視覚的アタックというものが効かない「縦書き」という技法によるものだと思ったりするのです。

だから私自身はWebで発言している人は古典的な「日本人」の概念からはずれていると思っています。さらに捻って考えると、Webで発言している人が「日本にいて日本語をしゃべって、日本文化についてある程度のシンパシーがあるから日本人」とするならば、C.W.ニコルさんを「日本人」として認識しなければならないと思うがどうか(爆笑

単にこのオチを言いたいがために引っ張ったんですが、無理スジでしたね(大汗

06月05日のアマグラマな生活と意見

◆CSSの意義をどう伝えるノカ

CSS(カスケードシートスタイル)ってどう役に立つのか、という問いにズバっと答えられる人いますか
っていうのも、ワタシが大ファンの音楽グループファンサイトを開いている人がいるのですが、その人はCSSを行間あけるのに使えるとか、CSSの意義を中途半端に理解している風味。しかし、そのWebサイト自体は大好きなので、なるべく悪感情をもたれないようにメールを出したい。あなたの考えているCSSの理解は間違っていると。
で、その人にメールを出そうとしたんですが、ハテ、困った 。

元々見栄え重視主義の人には「HTMLの論理構造」等と言っても分かるはずもなく。むーん難しい。。だいたい、その人、CSSのことを「カスタムシートスタイル」ってんですよ、カスタムシートってなによ(ワラ

で、自分のメモがてら、CSSの意義を纏めてみようかな、と思いだしました。もちろん、すでにそのようなページがあればなお結構であります。その手の情報が切実にほしいですね。とりあえずここのページはどうかな。「史郎、この鉄臭い器はなんだ!」

ですんで、以下の査読をお願いします。>物好きな方。

この態度はどうか>Average

◆という訳でCSS(査読募集中)

まず、htmlのタグは見栄えを調整するものではまったくない、という事を理解してほしいのです。というよりもhtmlって見栄えについては感知しねぇってのが基本なのです。タグをどのように表示するか、という事はブラウザ側が対処すべき事だよ、ということ。

たとえば強調を意味する<strong>というタグが、あるブラウザではフォントをでっかくしていて、あるブラウザでは赤字で表現したり、という事があり得ます(事実mozilla/Netscape6以降では、そういうカスタマイズが可能なのですが)

何故このような「スタイルは決め打たない」という事になったのか。これは閲覧する側の環境を同一にするという事が不可能だからです。

たとえば(Win系列を使っていればお分かりでしょうが)10インチのディスプレイと17インチのディスプレイでは解像度(dpi)が全く違うためにフォントの見やすいサイズは全く違います。またたとえdpiが共通しているMac系列でも閲覧する人間によって最適なフォントサイズは変わります。ワタシの場合そろそろ老眼が入ってきているのか、使うフォントが5年前に比べると明らかに大きくなってます(ワラ

こういう閲覧する側での表示デバイス、フォントサイズが様々な状態でありえます。ですのでフォントの大きさを指定しーの、テーブルでレイアウトしーの、のWebページのレイアウトをやられると、もう悶絶。閲覧する側としては非常にしんどいサイトになってしまいますです。また極端な話をすれば、フォントサイズ指定をするページというのは弱視の人にはオレのページは見るなと宣言しているも同然じゃありませんか。ちょっと無理スジか(ワラ。

という事を鑑み、html4.0以降では、タグはあくまでも文書の意味を表すものであり、見栄えはまったく規定しない、という方向になりました。閲覧する(ブラウズする)側で最適なセッティングをしてくださいよ、という事なのです。またそのために閲覧側でレンダリングしてあげるわけですよね。段落を表す<p>タグで囲まれた文はウインドウ幅で折り返すとか。

しかし、まっとうなビジネス文書等、見栄えを完全に無視して、内容の意味に即したタグだけで勝負ってのは非常に困難です。という事で見栄えについては「カスケードシートスタイル」という機構で見栄えを制御するという事になりました。

とはいってもねぇ、結局Web文書を作る人ってのは大体において、オーサリングツール(Adobe PageMilとかMS FrontPageとか)で作るわけでしょうから、こんなこと言われタッテネェって来もするしナァ。

06月02日のアマグラマな生活と意見

◆いけるぜ!Javaアプリ

JustArkをわが家のマシーンに(PenPro200MHz(memory92MB),Pen2-260MHz(memory192MB)の二つ)にインストールしてざっと触っています。

元々、一太郎Arkには「キーカスタマイズ」が出来るという世にも嬉しい仕様がありますし、文書DOMツリー(=XHTMLツリー)を表示できるプラグインも公開されています。これにタグ、というかエレメントのスタイルをCSS-2に反映させるプラグインがあれば、世にも嬉しいXHTMLを喋れるアウトラインプロセッサの出来上がりです。それに素のままでもキーカスタマイズ出来るし、Word2000の文書も読めるし結構いい感じです。

で、一太郎Arkを使ってみた感じとしては、PenPro200でも辛うじて動作します。勿論トロイっちゃトロイですが、Warpzilla-M16を実用ブラウザとして使った人間としては「結構使えるレベル」と言えましょう。一方、Pen2-266MHzの方は、メモリが倍あるのが効いて、なんとか使えるという感じカナ。因に事務所の1GHzのノートではすっげー軽快に動きます。むむむ。今4万あれば1GHzクラスのマシンは作れるし、悩みどころですねぇ。CS4280のFX00002なドライバってあったっけ。 (もうその気)

余談だが、Warpzillaといい一太郎Arkといい、動作がトロいアプリを使う際に、ついマウスを余計に力を入れて押してしまうのはワタシだけでしょうか。いや、なんか力を入れると早く動きそうな気がして。<それはお前だけだろう

さて、vaildなHTML文書大好きな人間にとっては、一太郎Arkが出すXHTMLがどんなものか気になります。で、一太郎Arkで何も考えずに作る素な文書はdivタグの嵐ですが、挿入コマンドで、真面目に挿入で段落を入れる、挿入で見出しを入れる、としてあげればちゃんと素直なXHTMLになります。今ある文書を整形してXHTMLにする、というには向きませんが新規に作る分には割にいい感じじゃないでしょうか。一太郎Arkは使えます

で、びっくりしたのはJavaアプリのスピード。256MBから512MB位まで積めばMMX-Pentium233MHz位でも十分使えるレベルだと思われます。なんてったってPenPro200MHzって同じクロックのPentiumと大体同じスピードだし。更にCPUスピードとしてはもはや最低ランクが800MHzに及ぼうとしている昨今、Javaアプリは非常に現実的な選択肢の一つと言えそうな気がしますね。JBuilderとか某方面での一押しメーラーPolarbar(綴あってる?)とか

で、一太郎Arkって1MBしかないし、ADSLの帯域を考えるとアプレットも結構実用的になって来ているのではないでしょうか。

◆Warp4.52のDOS窓って結構早い

自分のデスクトップを長年使っていたS3-968からMGAに変えました。

元々S3の前はトライデントを使っていて、これはDOS窓は早いしOS2だけで言うと非常に快適な環境だったんですが、OS2のX-Freeのドライバは無いので、悩んだ末に968を導入しました。この頃はUnix自体を触っていない性もあって「うーむ、使うアプリが無い、ステだ、ステ」という事でX-Freeはヤメ。その後トライデントは後輩がDOS/V機を自作したいという要望が有った時にVGAカードを渡しました

で、968を使っていたのですが、どうもUnixのXFree4.xと相性が悪い。真っ当にX-Windowの設定が出来ない。うがー、面倒だ、MGAにしちまえ。

で、MGAにしたらば、あなた、
(1)FX00002ではDOS/V Extention窓がうごかなーい!(フォントが表示されないだけだが)
(2)Warp4.52ではSibylがうごかーん!(コマンドラインコンパイラも動かずPMごと固まる)
というスバラな状況。(1)はちょっと古いドライバを導入、(2)はIBMのドライバからSDDに変更して難を逃れましたが

でも、Warp4.51では地獄のように遅いDOS/V窓がWarp4.52ではそれなりに動くのではまったケド結構満足なAverageでした。

05月26日のアマグラマな生活と意見

◆壮絶!インストーラー地獄 その3(Java1.3な生活を目指して・・・)

という訳でインストーラー地獄は続く。<ま、まだやってんですか

何故、こういう世界に突入したノカ。事の起こりはJustArk!なのだ!

いえね、事務所のPCが1GHzのノートに変わったんですよ、メモリ256MBですよ、皆さん。このスピードを満喫するのにMozillaの起動が早くなったと感動しているだけではつまらん、何かないか、重さをブリバリ感じるものは。そうだ。Javaがあるじゃないですか。<この態度はどうか。
「うーむ、今のJavaのスピードってどうなってんのかなぁ」と思ってJDK1.3をインストールしたと思いネェ。おおー、Javaのアプレットが動いているよー、等と思っただけで済めば良かったのですが。そうだ、JustArkってのがあるじゃないですか。国産で100%pureJavaで書いてなおかつXHTML,XML対応のイかした(しかし小回りが効かずめちゃくちゃ重そうな)アプリが。

結論からいえば結構実用的なスピードで動くことが判明。「おお、もしかしてJavaってアプリケーション環境としてもイケているじゃありませんか。カッコ良さを追及し過ぎて使えない環境じゃなくなっている!」
今更ながらJavaだけでアプリを書くという事が実用的な時代になって来ているんだなぁ、と。

となると当然わが家のおんぼろPenPro200MHz[*1]でのスピードを試したくなるのが人情、という訳でJava1.3をインストールするべくWarp4.52を再度インストール。だってJavaのインストール方法がわかんなかったんだモン。笑うな(ワラ
で、Warp4.52を日曜日をつぶしてインストールして試しましたよ。事務所の1/5のクロックのわが家のマシーンで
で、ですねJustArk使えるよ、コレという結論にAverageは達しました。しかも一太郎Arkってキーのカスタマイズも出来るみたいだし、なんてったって目標が「Javaで書いたxmlを喋れるemacs」なんですから、ちょっち調べてみたいですよねー。

でさ、インストールしていたらどうもflashのプラグインのインストール方法が今更分かったりして、どうもAverageの家ではようやくコンビニエンスパックが活躍しだした様です。

ところでダレかIBM1FLPY.ADDのオプションでノートで起動した後でFDDを付けても認識させるオプション覚えてませんかぁ、と思うAverageであった。そう、わが家ではいまだにLANではなくFDDでデータをやり取りしているのであった。わはは。

[*1]
ちなみに、某氏が家のK6-250MHzではさすがに・・・という記述を見て うへぇ、今どきK6、とか不埓にも一瞬思ったAverageでしたが、 実行性能比でも、CPUの製造年月でもわが家の方が ヨワいという事実に気が付きがく然。そうだよなぁ、大体今どきの最低スピード CPUのC3よりも3倍位遅いしナァ。

05月12日のアマグラマな生活と意見

◆壮絶!インストーラー地獄 part2!(ま、まだやってたんですか・・・涙)

さて、せっかくVineでKylixを導入したのはいいのですが、何を思ったかいきなりVineの区画を消してOmoikaneGnuLinuxというDebian系のデストリビューションを何故か導入。いや、根拠もなくワタシはDebianが好きなんだぁ。使ったこと無いですが(大笑い)
だから当然、何故Debianを使いたいノカ自分でもよくわからんデスが。

で、Kylixが動くのはglibcが2.1.9以上だったかな?つまりpotatoじゃ駄目なハズなんですよ。多分。今のFIXレベルだと分かりませんが。でWoodyでワタシの様なタコが使える奴だと今現在はOmikaneしか無いんですね。しかもWoodyのパッケージが矛盾なく使える様なハナシなので、「これしかない」感じでした。

問題はインストーラーがブートローダーをMBRに入れたがる事。うおー。オレはブートマネージャがあるっちゅうねん。空いているパーテーションもあるんだから、ちゃんとGRUBをそこに入れサしてくれヨー。おまけに(ディレクトリ構造を把握していない性で)grubのありかもわからんし、大体grubの把握しているパーテーション番号なんておりゃシラネェ。
あきらめて起動ディスクを作る。

いやはや、基本知識が無い人間はつらい。余談だが今更会社から携帯を持たされたんデスケド、使い方さっぱり分からない。いやはやいつの間にか時代に取り残されていた事であるなぁ(詠嘆

こんだけ四苦八苦して導入したDebianなんですけど、立ち上がったGnomeを見て絶句。タ、タ、タ、ターミナルがメニューに無いんですが!おまけにファイルマネージャらしきものもないんですけど、ワタシにどうしろと。

奇絶、怪絶、また壮絶!

05月06日のアマグラマな生活と意見

◆壮絶!インストーラー地獄!(ワライ)

皆さま、連休中におかれましては、いかがお過ごしでしょうか。私はwarp4,warp4.5,Vine2.5のインストールだけしてました

いやね、元々の発端は、Linux2.4では2.2系列と比べてスレッドのスピードの向上が著しい(つーか、これでようやくWarpやWin並になったといえましょう)となったので、遅い遅いと言われているQtやGNomeの使いごごちが2.4では飛躍的に向上しているハズであろー、と考えてちょっとインストールして見たかったんですよ。

この上記のハナシはLinuxJapanの2.4カーネルの解説からの説明を 見て、ワタシが推論しているので性能云々の部分は眉に唾を付けて 読むこと。

ちょうど2G程度のスペースが空いていて、よっしゃここにいれたるわー、と何も考えずにインストール。LILOは定跡通り、Linux区画の先頭にインストールして、ブートマネージャで選択でいきるようにしておけばよろしかろう、さあリブートして・・・・あれ、あれれれれれれ、パーテーション情報が壊れてるぜ!ギニャー!

こっからが大変。まずWarp4とWarp4.5を両方インストールしていたんですがWarp4は死んだ。Warp4.5は生きていたが、Warp4の区画、データの区画は完全に沈黙。まったく見えない状況です。さらにWarp4.5でのFDISKであるLVMも残りの区画を認識しない。ギニャー!
Averageのギニャー度さらに倍っつー感じですよ?

さて、CドライブにインストールしてあったWin98ですが、なんとWarp4.5の区画を認識してない。ううむ。

さて、ここに来て開発中のソースは最新版はすべてノートの方にアルからヨし。今までに仕事の合間にイントラからこっそりとダウンロードしてたグラビアアイドル画像(約400MB。あ、あほやー)はこの際あきらめよう。と決断するまでに約1日。あーでもないこーでもないと頭を絞ってました。特にLinux2.4ではHPFSをマウント出来るのでこれでなんとか、と思ったのですが何故かインストールしてもXが起動しないので、どっかインストールを失敗しているのであろうと判断してこれはヤメ。漢らしく(ワライ)Warpで処理するのじゃー

ただ、Warpで絶対パーテーションを切り直すといってもWarp4.5のLVMは絶対に使えないです。Warp4.5のLVMのパーテーション情報はどうも他のOSとの相性が悪く、というか、どうもLVM独自のデータが有る様なので危険。大体Warp4でWarp4.5のパーテーション情報と食い違う時が多くこの辺は如何にも危険そう

と言うことで色々試行錯誤していたのですがWarp4ではどうしても8GのHDDを上手く認識してない。でも手持ちのWarp4のユーティリティデスケットではちゃんと動くんですよ。ううむ謎だ。FX00002のインストールディスクはCDから作った奴なんですが、タイムスタンプが軒並み96年10月という如何にも怪しそうな時間だし、ディスクイメージはWarp4.0のまんまじゃないのか?コレ?という事でユーティリティデスケットのCDINSTコマンドを使って見たもののこっちで切ったパーテーションをFX00002のインストールディスクでは全く見えないし、なんとLinuxもインストールできないと来たもんだ。

結局Warp4.5のインストールディスクでブートしてからWarp4.0のFDISKで切ってインストールという技を駆使して無事Linux,Warp4,Warp4.5のインストールを導入しました、とさ。
とっぴんぱらりのぷう

という事をやって連休は楽しく過ごせました。XF86のインストールで968の認識が上手く行かなかったりしたのでマトロックスに変えたらFX00002ではDOS/V Extention窓が動かなかったりとかなかなか楽しめました。

と言うことでパーテーションの情報はHDDの何処に記憶されているノカ等情報を御存じの方は是非教えて下さい。

04月21日のアマグラマな生活と意見

◆いやはや、なんとも間が開いた事である事ヨナァ(詠嘆)

さて、Webページの更新をこんなに間があいてしまっているのはどういう訳かといいますと・・・・

ゼルダの伝説にはまっているからなのだぁ

しかも「時のオカリナ(1998年作品)」(大笑い)

なんとつい最近(去年の10月?)くらいまで、わが家はゲームコンソールバージンだったんでスケド、子供がまぁ、人の家にいくと覚える訳ですな、任天堂を。で、小学生だともう任天堂が圧倒的なんですわ。で、ゼルダの伝説の漫画を貸してくれた友達がいて、「ぼくもやりたーい」となった訳です。

で、ゼルダの伝説自体はまぁQuark3というかHexenというか、あのての3Dで、剣主体のダンジョン探索ゲームなんですけど、少年時代と大人時代の2世代でやるんですわ。で、少年時代に自分の出身地(コキリ村)から出て外の大きな世界に出るんですが、その時に幼なじみの女の子と別れを告げてつり橋を渡って外の世界に出かけるのですね。

私は、この「子供時代との決別」を橋を渡ることでアレゴリカルに表現している(大笑い)演出にまいってしまったのです。素晴らしい。うおー。是非ラストをみたいー。

でもさ、セーブからの復帰がコキリ村に戻っているので、この感動をゲームがぶちこわしているなぁ。(大笑い)

という訳で、基本骨格はすっごく気に入っているんですが、些細な点をどうしても修正したい(ルト姫の扱いとか。アレはちょっと・・・・)
で、ゲームの構造をそっくりパクってQuark3の公開されているエンジンを使えば、ゼルダっぽいOS2のゲームも夢じゃないなぁ・・・等と思ってという訳で、実は家庭での自由時間は総てゼルダにささげているのでありました。それもこれもOS2の為です。・・・・嘘です。

という訳でゲーム廃人となった私に今暫くの猶予をば。あと1/3位なので。 <この態度はどうか。

「VirtualPC for OS2」の話

VirtualPCのエミュレートするビデオは968だと思うのですよ、確か。だけど家の生の968はXFree4.0xを採用したTurboLinux7.0,RH7.0あたりだと軒並み生968を真っ当に認識しないのですが・・・・。という訳でVirtualPC for OS2の場合の対応策としてはめっちゃメモリを積んだVideoボードを使ってみるってのはあるのかな。

「ふぉんと」の話

私は半角カナ絶対禁止派なんですが、理由は半角カナはフォントがカッコ悪過ぎだからなんです。たとえ技術的に問題なくてもコレだけで絶対ゆるせねぇ

実際フォントがカッコ悪い為にどうしてもWindowsを使えなかった俺様としてはこれは譲れないなあ。因に私は最近お気に入りの英数字等幅フォント(LetterGothic or Lucida console)とフツーのDBCSフォントを組み合わせられる等幅フォント環境のEditorであるxyzzyを発見、これで大分Windowsに対する嫌悪感が減少しましたが。

という訳で今はWoodyでKylixをビルトインしたデストリを待ち望む今日このごろ。だれか作って下さい。実はOmikaneがまぁいいんですけど、ブートローダーがgrubでこれでブートマネージャと共存させる方法が分からない

03月21日のアマグラマな生活と意見

◆R.A.ラファティ逝く!

という事で大大大大ファンであった、R.A.ラファティさんがお亡くなりになったそうです。がびーん。

ただそれだけなんですが、ワタシにとってはめっちゃ大ショックなのです。

新作が出ない、という事については近年はまっとうに出版できていなかったハズでしょうし、そもそも邦訳されている長編が全体の1/10程度なのでこの機会にガンガン訳されるといいなぁ、等と不謹慎なことを考えている位なんですが、なにしろ熱烈なファンはいても一般的な読者がまったくついて来ていない作家なのでおそらく邦訳が加速されるなんてありえないでしょう。

という事で、大ショックなのは「このオヤジ、まだ生きてたノカ」という驚きの方が大きかった<この態度はどうか。
ラファティは作家のキャリアが40年近くあるんですが、50歳から文筆業に手を染めた人だし、大体10年以上前に心臓のバイバス手術をしたんだよ。その後音沙汰がないからてっきり・・・・

というのは冗談にしても、我々地球はダグラス・アダムズに引き続き唯一無二、まったく取り返しの付かない大いなる「役に立たない」才能を無くしてしまったのである。合掌。

03月10日のアマグラマな生活と意見

◆求む!MIDIエディター:-)

人はだれしも、完成するのに10年、20年かかる趣味というものがあると思います。

それはお前だけだろうという突っ込みは却下

さて、最近富樫雅彦のスピリチュアルネイチャーをMIDIに変換するべきではないのか、というキモチがふつふつと沸いてきたのですよ。というのもスピリチュアルネイチャーって曲としても傑作だから楽譜として残したいのですよね。で、楽譜があっているかどうか、MIDIなら検証も楽だし(ワタシは楽器は演奏できないので)

ということで、MIDIと楽譜を行き来できるエディタってないでしょうか。出来ればOS2上で動く奴。と言うことはDOSかOS2ネイテブ、かな。最大限譲歩してWin3.1もアリにしてやろう(大笑い)

見るからに無理そうな注文ですな

とりあえずKAMUIさんとこのTimidyのページを見つつ再生環境を整えよう、と最近誓いました。ううむ。

最悪、無ければ自分で作るしかない、のですがMIDIの内部構造をシロートに分かりやすく教えてくれるサイトって無いでしょうか。大体上記の計画もMIDIが20和音位楽々再生出来ないと意味ナイし。ダレか教えてクレー

02月02日のアマグラマな生活と意見

◆今更ながら、Prolog萌え:-)

第五世代コンピュータプロジェクトは偉大だナァ。今更ながら、Prolog萌えになりました。

どんな所に萌えたのかといいますと・・・
これは「続ソフトウエア千夜一夜」という本に載っていたのですが、通常、イベントハンドリングを実現する際に、

procedure BaseEventClass.EventHandler(Event:EventType);
case Event of
    WM_CLOSE:終了処理;
    WM_SIZE:ウインドウ変更処理
end;

みたいにしますヨネ。で、このテのモジュールがある場合に、拡張する場合どうするか。オブジェクト指向だったら

MouseEventClass=class(BaseEventClass)
なんて定義してやって
procedure MouseEventClass.EventHandelr(Event:EventType);
begin
    case Event of
        wm_MouseMsg:マウスの処理
    end;
    inherited EventHandler(Event);
end;

等として上げるはずです。よく、「この場合は拡張する場合、元のソースを弄る必要はないし、外部のインターフェースさえ押さえておけば問題ない、だからオブジェクト指向は素晴らしい」なーんて言われる例の一つだと思います。でもワタシはこれを見る度に「えー、だって元のクラスの定義をしらないと駄目なんだから苦労が『少なくなる』だけじゃん」と思っていました。ようするに徹底度が少ないと思う訳なのです。大体、上のような拡張の考え方はオブジェクト指向でなくても、Modula2が設計された1980年代前半には既にpascalerでは既に使われていました。名前空間がつかえたんでね。(ヘヘン!)でもPrologなどの論理宣言型言語だと拡張はただ単にホーン節をさらに追加するだけでいい筈なんです。つまり

文法はいいかげんでスぜ、念のため。
  EventHandler(Event:-
               EventがKeyEventの時真になる述語,
               KeyEventを処理する述語)
こんな風に、EventHandlerを定義したとして、マウスの処理を入れる場合
  EventHandler(Event:-
               EventがMouseEventの時真になる述語,
               MouseEventを処理する述語)
という述語を追加するだけなのです。両者の定義は特に同一のモジュールに
なくてもヨイし、ソースに隣接する必要もないはずなのです。理論的には。

どうです、第五世代が華やかなりし1990年頃のマシンではこれはどう考えても負荷がかかりスギって感じデスケド、今ならなんとかえっちらおっちら動きそうな気がしませんか?ついでにいうと、今Prologの意義を見るに、結構ヨサゲな気がしません?特に大規模なソフトウエアの構築、という面から見るに。

実は、Prologには入出力を本質的には扱う手段がないので、第五世代ではストリーム入力を自然に扱えて、なおかつ論理宣言を破綻させない為に、GHCという新言語を設計しています。さらにGHCは言語に実行順序を規定しない為に、自然に並列性を導入することが出来ます。

ただ、こういうメリットがあるから、と言ってだれかがPrologの復権!と騒いでも多分単純な形ではリバイバルしないでしょう。LISP,Prolog等や、新言語でコンパイル系の言語は今後新規に人気を得るのは非常に難しいと思われます。というのも、いずれも導入のコストが大き過ぎるからなんですよね。この辺の考察は「人気の言語を作るには」という文書がありますが(URLはhttp://www.shiro.dreamhost.com/scheme/trans/being-popular-j.htmlです)ようするに使うのにかったるい(導入が大変、対話的に実行できない、使えるライブラリが揃っていない、書く時に約束事が多いと面倒)言語はステだろう、という事ですね。

で、今Prolog的な論理宣言型言語を流行らそうと思ったら、馴染み易い文法じゃないとだめでせう。少なくとも「ほにゃらら:-ほげら、こげら」という宣言がほにゃららという事実が入ったら「ほげら」、という条件の時に「こげら」になる、って思います?ワタシはむしろホゲラ、コゲラの時にホニャララになる、とフツーは見えると思うのです。という訳で、もう少しなんとかならんのかなぁ、と。後スクリプトとして使いやすくという条件で再設計すれば宣言型言語結構イケてる言語になるんじゃないかと思いますが。

ついでにアルゴリズムデバッギングという革命的手法が使えるのですが、この辺も次回話してみたいと思います、とやたら続きは次回にってのが多いナァ。

01月27日のアマグラマな生活と意見

◆ザンスの吉牛

ネタバレはないつもりですが・・・・さて、うまくいくかな?

そんなことより、なぁ>>1よ聞いてくれ。このあいだ、ザンスの最新巻買ったんです、ザンスの最新巻。ハンフリー一家のいなくなった謎が解明されるって奴。そしたら、なんと、ザンスの運命になんの関連もない、ハンフリーのただのプライベートな悩みだったんです。おまけに主人公のねーちゃんは「人生が味気なく、つまらない」事を変えるためにハンフリーを追っかけるという。もう馬鹿かと。阿呆かと。

おまけに解説で「ハンフリーのこんな意外な過去が」とかいっちゃってもう見てらんない。おまえ、本当にこんな過去が面白いノカと。ただのザンスの成立する意味が変容する訳でもない、ただの老人の昔話が面白いノカ問い詰めたい。問い詰めたい。小一時間問い詰めたい。ザンスの醍醐味ってザンスという不自然な世界の成立する意味を問い直す。つまり世界を変容させるというその圧倒的な投げ技を極める事がいいんじゃねーか。たかが個人が生きた、困った、突き抜けたなんてどうでもいいじゃねーか。どうせ100年もすればみんな塵になるんだし。

やっぱりSF通(ワライ)のワタシからいわせれば今はスティーブン・バクスターの「虚空のリング」、これだね。だけど、1章毎に登場人物の性格が変わったり、人間がまったく書けていないにもかかわらず、太陽系、銀河系、宇宙そして時空を改編するというアンバランスな構成。危険。素人にはお勧めできない。大体絶版だし。
まぁ素人はスティーブン・バクスターの「タイム・シップ」かイーガンの「宇宙消失」「祈りの海」でも読んでなさいってなこった。

ううむ、あんまり上手くイかなかったなぁ・・・。まぁバクスターの「タイム・シップ」とイーガンはいいデスぜ。トクに宇宙消失は宇宙の意味が変容する事と、個人の悩み、苦しみがシンクロして最後に更にとんでもないレベルでブレイクする、という正にワタシの考えるSFのお手本のような奴ですぞ。

ここで、明らかになるように、ワタシ、登場人物に感情移入させようとする昨今の文芸作品についてはなーんにも興味がないのよね。それはやっぱりワタシが他人と違い過ぎるので、他人に興味がないからでしょう、やっぱり。(大笑い)

念のためにいっておきますが、そのテの文芸作品自体は嫌いじゃないというか好きなんですが、3年以上感動が持続するかというとそんなことはないのですよ。ええ。たとえばR・A・ラファティの諸作、バクスター、クラーク、イーガン等の感動は今も続いているけれども、E・A・スミスのレンズマンなんてどうでもいいもんね。いや、スミスがつまらないのではなくて(新版が出たら買おうかなと思っている位で)最初に読んだ時の「ドキドキ」感はもうない、という事です。だから別に無くなってもいいんだヨネ、というキモチになってしまうのです。

●elvの描画システム

TApplication (クラス間の接続を行うクラス)
  ScreenManeger(表示の機種依存を司どるクラス)
  BaseViewManeger(表示するデータをマネージするクラス)
     Fg,Bk,status:DocViewClass;(前面、背面、ステータス行エリアのデータ保持クラス)
     ViewList:TList;(DocViewClassを入れておく配列)
       DocViewClass(表示エリアとDocumentをポイントするクラス)
          Area:RectL;(表示エリア);
          Doc:BaseDocClass;(ドキュメントクラス);
          AreaList:AreaElementList;(AreaElementClassの配列)
              AreaElementClass(画面表示要素、行とか図形毎の表示を司どるクラス)
                  Area:RectL(表示エリア);
                      function isDraw(Rect:RectL):boolean;
                      procedure DrawArea(Rect:RectL);
                         procedure GetName//これは各AreaElementでOverRideした手続き
                         procedure DrawArea
                             WinDrawText(ScreenManeger.WinPS,GetName,Area
                                簡略化してますがおおむねこんな感じ
          procedure AreaUpdate;//AreaElementの描画エリアを再計算する
          procedure SyncDocView;//AreaElementが描画するDocClassを再度取得する
          procedure UpdateDoc;//DocClassを再度取得する

以上のような感じで表示用に自分が描画するエリアをAreaを保持したAreaElementをオーバーライドする事で汎用的なフレームワークを作る、予定です。今はカーソル移動を四苦八苦している最中であります。ここで書いているのは99%自分の防備録レベルで、(一般の人が参考に出来るレベルになるには相当後にならないと)ありますからしてこういう構造をファイルから取り出すスクリプトがあれば、こんな下らない事書かなくてもいいんだけれどなぁ。欲しいナァ・・・でも自動的は難しいかねぇ、やっぱり。

01月21日のアマグラマな生活と意見

◆ミックスジュース、Mixジュース、MixJucie!

このオブジェクト指向は間違っていた!というページで提示している「差分モジュール」という機構は非常に面白いですねぇ。このメカニズムを導入すればほとんどデザインパターンが不要になるはずです。むきー。鼻息荒いギミ。で、このMixJuceってのはJavaのバイトコードを吐き出すタイプのコンパイラなので、わがOS2でも楽しめる・・・かな?

面白いことに、この差分モジュールという機構は、あの「ダッサダサ」なOberon-2のクラス記述と非常に親和性が高そう。もう少し整理して、再度述べてみたいです。

◆たかがOS,さればWarp!

以下の話は、ほとんど「ソフトウエア千夜一夜」という本の中の「たかが論理、されどProlog」という話のパクリです。「ソフトウエア千夜一夜」自体は1990年刊行なんで、購入は難しいと思いますが、暇な方は図書館で探してみて下さい。面白いゾォ

さて、本題です

だから僕はOS2が好きだ。
ダレが何といおうと、僕はWarpが好きだ。だけど、いわゆる「スレッドセーフでオブジェクト指向なデスクトップを持った先進のOS,省資源、安定性、セキュリティのしっかりしたOS」が好きな訳ではない。むしろそういう特色は嫌いかもしれない。この事は別におかしなことではない。確かにOS2は今だ(!)優れた設計と安定性、省資源(メモリ32MB、HDD512MBあればまぁ楽しめる)でセキュリティにも優れたOSではある。だけどそれと全く関係なく、好きなものは好きで、きらいな物はきらいなのだ。

ここでは、何故僕がOS2を好きなのかを、自分自身で再確認する目的もかねてあなたに説明してみよう。

実利的にはOS2はスレッドセーフでオブジェクト指向な先進的なOSであり、今実用になるOSとしてはメチャメチャ省資源(Linuxのディストリも最近は2G程度要求するという極悪非道なシステムになっているのが納得いかない)ではある。でもそういう利点があるから僕はOS2を使っているのではない。
大体OS2のアプリは主流でない悲しさで(メチャメチャ少ないという程ではないが)やはり不足気味なのはやむを得ない。コンピュータを実利的に使うという意味ではOS2を使うのはあまり論理的ではない、と言われてもしょうがないだろう。

しかし、そもそも人間は論理的に思考する物なのであろうか。おそらくはしていないのである。勿論、論理的な思考をまったくしてないという可能性もありえないとは思う。たまにはすることもあるかもしれない。でもほとんどの場合には論理的な思考はしていないに違いない
ほとんどの場合、我々は結論が直感的に思い浮かんでいるはずである。トクに人間の生存にとって本質的なほどその傾向が強いような気がする。大体瞬間的な判断を要する時に一々論理的に考えてたら時間ばかりかかって何も出来ないではないか。

何故、「富樫雅彦のスピリチュアルネイチャ−」が素晴らしいのか、
何故、平原の夕日が美しいのか、
何故、「楕円曲線の有理点は有限生成の加群をなす」という定理が凄いノカ
ということは論理では全く説明がつかない。評論家を気取って「富樫雅彦」についていくら記述を書き連ねても実はなんの説明にもなっていない。ただ「ヨイ」という言葉を色々な語彙でそれらしく言いかえているに過ぎない。富樫雅彦が「ヨイ」ことを論理で証明しようとしても意味がなくまたそうしようとしても不可能なのは直感的に(論理的でなく!)明らかであろう。

少なくとも理性的に考える事は論理的に考える事と等価なのであろうか?人間は原因と結果、目的と手段という関係に着目して思考するのであって、論理に着目して思考しているのではない。ついでに手段の為に目的に着目したりするのはよくある事デスヨネ:-)つまり結論を本当に論理的に導き出す事はめったにない。

そもそも、本当に論理的な思考をしているのならば、人間が論理的に間違うはずがないではないか。人間がしばしば論理的でない行動を取るのは、実は論理的に思考していないからだと考えるのが自然である。論理は人間の思考の説明原理の一つであって、けっして動作原理ではないのである。人間は論理で動いているのではないのだ。

僕はOSの専門家ではないので、特定のOS/ベンダに対して特別入れ込んだりしない。あるOSについてこれこれの長所があるから好きだとか、これこれの短所があるから嫌いだとか、学問的に分析したりしない。そもそもOSがどれもこれもまったくどうしょうもないほど使いづらいのは分かりきったことで、理想とするレベルから見ればみんな五十歩百歩なのだ。良い悪いは単なる趣味の問題と割りきっている。怠惰な僕にプログラミングの意欲を与えてくれさえすればそれで十分である。デバッグの勇気まで授けてくれればもう言う事はない。OS2は僕にとって許容できる数少ないOSの一つだ

OS2には(無くても困らない過去のシステムの)互換性重視、堅固なスレッド回り、(ほとんどのアプリから利用されていない)オブジェクト指向デスクトップという個性がある。他のOSにない個性が存在すると言うことは、その個性について好き嫌いは別として、個性がアルということはそれだけで評価に値するといっていいと思う。ここまではとりあえず納得していただけると思う。それから先の部分、何故OS2が好きなのかはもう自分でも説明が付かない。よく指摘されるアプリの少さ等はまだなんとか許せる種類のものである。少なくともWindowsでの同一ジャンルでのソフトのみんな同じコントロールを使うが故の同じ使いづらさに悩むよりも、ソフトそのものが無い事に悶える事の方が楽しい。アプリが多い方が楽に決まっているが、OSとしてはOS2の方が好きだ。責任を持っていえるのはココまでである。

ここで言いたかったことは、OSなんてそう大したことが無い、という事である。そもそも趣味なんだから、「アプリが少なくて使えない」「ドライバが無くて使えない」OSを何故使ってはいけないのだろう。何故みんなが使っている物を使わねばならないのだろう。何故不便な物を使ってはいけないのだろうか。そもそもそういう事を楽しんではいけないのだろうか。だって、どうせ今のOSなんて大して使えないのだから。買物に代わりに行ってくれない。子供が熱を出している時に、医者につれてってくれない。気の効いた会話をしてくれる訳でもない。そういうレベルから見れば所詮使えないんだし。携帯の方がよっぽど気が効いている。

論理的に「それは間違っている」と指摘する方は大量にいらっしゃるだろう。でも、僕はまったく平気である。彼らには論理的な議論しか出来ないから非論理的な僕を納得させることは出来ないに決まっているからである。

OS2はごく普通のOSであるけれど、(無くても困らない過去のシステムの)互換性重視、堅固なスレッド回り、(ほとんどのアプリから利用されていない)オブジェクト指向デスクトップというという愛すべき特徴がある。

だから僕はOS2が大好きだ

01月15日のアマグラマな生活と意見

◆あなた、何歳になりました?

リストを作るのが趣味(と思われる)林さんのサイトでアニメ登場人物の一覧リストなるとんでもないものを見てしまった。URLはhttp://www2s.biglobe.ne.jp/~ttsyhysh/list/char_age.html です。ううむ、私、ギレン・ザビより年上ですか。そうですか。もうすぐでガーゴイルに手が届きますか。そうですか。・・・・・・・頭イタイ。こんなに俺様、こんなに子供で、幼くて、精神年齢低くていいのかしら。

01月14日のアマグラマな生活と意見

◆原理主義の恍惚と憂欝(爆笑)

このページをたち上げる前に、「ドキュメントをHTML化すれば自宅のOS2でも仕事の作業が出来るナァ・・・そろそろhtmlの構造を勉強するカァ」と考えて、ビレッジセンターから出ている「正しいHTML4.0リファレンス&作法」という本を買っていたのです。同時にOS2Magの最終号を買った気がするなぁ。

この本を買ったのは単に同種の本の中で一番安く、また小さかったというただそれだけの動機だったのです。しかし、それがまさか私をこんな人間にする事となろうとは神ならぬ私も知る由はなかったのでした。
なんとなれば、単にhtmlの構造とタグ一覧があればよかろうと思って買ったこの本はなんと恐るべき事にhtml原理主義の本だったのです!

html原理主義とは、要するに「html文書は文章の論理構造をタグ付けするもので、見栄え(たとえばblockquoteはインデント目的で使うな!引用を意味するタグだから)を決定させる物ではない。見栄えはCSSで行うべき」という主義主張で、一部のサイトではW3Cの定義に乗っ取っていないサイトとの戦いを続ける「W3C子」という「ま〜りんちゃん」コンパチ(ほんとか)なWebアイドルもいるくらい、マイナーメジャーなものです。(嘘かもしれない)

私ゃその時はじめてCSSという言葉を知ったのですが、元々原理主義的な言葉に弱い私はすっかり「スタイルシート」「htmlは文書の論理構造を表すもの」という教条主義のトリコになったのでありました(笑い)。でもさ、後で色々とスタイルシート関連のサイトを見ると、この本を良いという人、いないデスナァ(大笑い)。今だと結城浩さんのXHTML/HTML入門(でしたっけ?)とかあの辺になるのかなぁ、定版は。

さて、スタイルシートにいったんなれると、小見出の装飾とか、本文のインデントか、各要素の字体、見栄えがスタイルシートを変えるだけで済むので、修正がとっても楽チン。一発で見栄えがガラッと代えられるこの快感に浸ってしまったらもう字の装飾にいちいちWYSWYGで指定するワープロ型の字装飾がかったるくてしょうがない体になってしまったのですよ。うぐぐ。ワープロって本当に使いづらいぞ。
ううむ、結局サクサクっと使えるWindows用のエディタ/ワープロで、更にフリーのってどんなのが良いんでしょうか。とりあえず自分の好みとは正反対なんですが、何故かxyzzyが一番性に合うというのもなんだかなぁなんで、是非Wordstarライクなキーバインドを持つフリーのエディタの情報を待つ。

で、スタイルシートらう゛らう゛派としてはNC4.7xはステステ、Mozillaラブなんですが http://ftp.mozilla.org/pub/mozilla/nightly/を見ると最新のMozillaがゲットできますので、興味のアル方は是非どうぞ。あともじら組もぜひどうぞ。

あ、話がずれた、そのMozillaなんですが、xulでH1〜H6までをアウトラインで表示できるという拡張ソフトを作った人がいます。URLはhttp://www.cc-net.or.jp/~piro/works/_moz-extensions.html です。こういうのを見ると、なんつーか、「ワープロステ?」というかなんというか、テキストエディタ(勿論HTMLのタグは支援機能がないと大変ですが)で文書を作って、Webブラウザで印刷というフローの方が楽で良いような気がしますね。古のエディタ+TeXみたいなノリですね。勿論TeXのほうが素晴らしいのですが、フォントの生成とかあるので、初心者(さるまね小僧)には導入がちょっと大変。Webブラウザだとパッケージが一つですむじゃん、っていう事で。

●elvのフレームワーク構造について(その1)

さて、elvのフレームワークの構造として、1週間考えた結果こんな感じで進めたいと考えます。困ったら後で困ろうという事で。ちゅう感じで、次回はいよいよWindowを作って、横罫線を表示してみたい、と思います。スクロールとか、カーソル移動は更にその後ネ。

TApplication (クラス間の接続を行うクラス)
  ScreenManeger(表示の機種依存を司どるクラス)
  BaseViewManeger(表示するデータをマネージするクラス)
     Fg,Bk,status:DocViewClass;(前面、背面、ステータス行エリアのデータ保持クラス)
     ViewList:TList;(DocViewClassを入れておく配列)
       DocViewClass(表示エリアとDocumentをポイントするクラス)
          Area:RectL;(表示エリア);
          Doc:BaseDocClass;(ドキュメントクラス);
          AreaList:AreaElementList;(AreaElementClassの配列)
              AreaElementClass(画面表示要素、行とか図形毎の表示を司どるクラス)
                  Area:RectL(表示エリア);
                      function isDraw(Rect:RectL):boolean;
                      procedure DrawArea(Rect:RectL);
          function isDraw(Rect:RectL):boolean;
          procedure DrawArea(Rect:RectL);
          

01月13日のアマグラマな生活と意見

◆Lucidaフォントの導入に成功ス!

と言う訳で、あちゃいんさんの掲示板で、「ワシはLucida Consoleフォントがつかいたいんだぁぁぁ」と吠えたら、あちゃいんさんが「そりゃ、フォントパレットで、追加を選べばできるじゃん」との指摘を受けました。あら。もしかして、ヘルプに書いてあるような事だったのかしらん。ハズカシー

と言う訳で、FWEでLucidaコンソールフォントにしてちょっと使ってみました。割にいい感じですが、フォントの関連付けがTrueTypeフォントが指定できないせいで、日本語がちょっと汚いですなぁ。でも、RFフォントは割と好みの字体だから許す。

01月07日のアマグラマな生活と意見

◆スタイルシートは難しいなぁ・・

うーん、NS4.7xのスタイルシート解釈は癖があり過ぎなので、出来ればMozillaで確認したいのですが、FX00002では起動すらしやしねぇ。どうすりゃいいんだぁぁ。

いや、単純に規格書を読めばよいのでしょうが、NS4.7xでいい感じにしてもモジラだとひどかったり、あるいは逆だったりするのですが、ワタシのOS2ライフはほぼFX00002でPen120MHz,48MBメモリ、1GBのTP560なノートで賄っているのでWarp4.52を入れる余裕がないんですわ。

と言う訳で、FX00002でモジラを起動させた強者募集中。

絶対いない。

●Oberonへの長い道(その2)

さて、自作のフレームワークについて、基本方針を固めてみよう。ViViのサイトでのエディタ作成の講座では(http://vivi.dyndns.org/tech/tech.phtmlですな)当然MFCにのっとってMVCモデルで、M(モデル、つまりデータ)とV(表示部分、ウインドウに相当)が独立したモデルを考えています。で、当初このViViのエディタの作成講義をそのままパクってやろうかと考えていたのですが、どうも具合が悪い。よくよく考えたら、そもそもMとVを独立させるというのがここで考えているアプリの姿に合わないのですよ。むしろMとVを合成させて
(controller)<−>(多数のデータ+表示クラス)
とした方がヨイ。当然(M+V)なクラスは様々な派生クラスがあって、タスクスイッチやプログラムラウンチャとして機能する予定・・・本当に出来るノカ、とお思いでしょうけど、ワタシの通勤用ノートのマウス代替なスティックはハンパじゃなく使えないので、実はタスクスイッチャ+ランチャは非常に欲しいのです。effでも良いような気もしますけど、タスクのリフレッシュを一々やらないといけないのがちょっちサミシイので。

という訳で基本構造としては

[TApplication]・・・・・フレームワークの大本クラス
    (EventHandler)・・・イベントハンドリングクラス、こいつが結構トリッキィなの
    (Screen Maneger)・・画面表示のハンドリングクラス。機種依存を引受ける
    (Viewer ・・・・・・データと表示をつかさどるクラス
        (TextView)・・・Viewerの派生クラス
        (TaskView)・・・Viewerの派生クラス
        (・・・・)・・・Viewerの派生クラス
        (・・・・)・・・Viewerの派生クラス
    )

なーんていうイメージにするのが正解ではないのかな。今の場合。なおこのフレームワークはダイアログでCTRL-E,S,D,Xが効かないと衝撃が大き過ぎるので総て自前で描画する予定です。古のTurboCというか、今のVirtualPascalのPM版みたいなイメージですね。

実は、この構造に1年くらい悩んでいた気がするのですが、もう悩むのヤメ。さすがに今年は実行の年としたい。最初の設計が悪いと、後で困るナァとかなりなやんでいたのですが、やはりアライグマ君の名言を思い出すべきでしょう。

「後で困るからって、後で困るのになんで今困る必要があるんだよ」


index.html