/var/log/hdk.log

2023 年 11 月

prev, this, next


01 (水)

%1 すいようび

晴れ。 ちょっと暑くなった。

ダイソーの BLUE LED MOUSE, 新しいほうにつなぎかえたら、suspend-to-RAM (スリープ) の時に青色ランプが消灯するようになった。 見た目は変わらないんだけどな。 改良なんだろうか。

夜に東京ラーメンフェスタへ。 例のフランスの「ブルターニュ産オマール海老のエスプーマ豚骨」。 こだわりセット +500 円。 ちょっと太い麺。 独特なスープ。 色が付いたタマネギか何かのしゃきしゃきとした食感も。 とても不思議な味で、日本で出てくるラーメンの味じゃない気がするけど、これはこれでおいしかった。 スープはもうちょっと薄くてもよかったな。

第 2 幕はこのフランスのを食べたので、あとは 3 連休に鹿児島の鶏白湯とやらを食べてみたい。 1 回 2 食は露骨に体重が増えたので (笑)、1 食ずつにしよう。

駒沢まで Google Maps が多摩川沿いから登戸のほうを抜けていけというのでそれを使ってみたが、45 分はこえた。 ところどころ混雑しがち。 久地から先あたりはそこそこスムーズになり、246 でずばーっと速い、みたいな。 帰りは Google Maps は見ないで、素直に 246 から環八に出て甲州街道で、40 分ぐらいだった。 国領経由のほうが 2 km ちょっとぐらい短いみたいだけど、世田谷通りの交通量が結構多いからなぁ。 まぁでも、時間的にはどれも大差ないという感じかな。

テレビアニメ『るろうに剣心 ―明治剣客浪漫譚―』2023 年版。 17 話。 弥彦の声の怒り具合と冷静な顔の絵があっていなかったw らいじゅうたバトル。 真空がどうのこうの。 決着。 らいじゅうたの弟子はお別れ。

テレビドラマ『トクメイ! 警視庁特別会計係』。 3 話。 経費削減 1 日警察署長。 栃木が 100 km 以上と言っていたがこれ舞台は東京なんだろうか、と思ったけど「警視庁」だから東京でいいのか。 ウィンウィンの誓い。 沖縄県警も予算が...w 検索エンジン「Eagle」。 イベントで事件も解決! このドラマ、各話でそれぞれ事件があって解決する、というのとは別に、警察に対する脅迫事件というのが裏でちょっとずつ進んでいて、まだその謎は解けていないっていう、そういうスタイルのドラマで先が気になる感じにできている。

2023/11/01 のコメントを読む・書く


02 (木)

%1 Fizz Buzz for i386 Linux

20231102-q32.s

先月の x86_64 Linux 用の短い版をベースに i386 用に書き直した。 浮動小数点演算も一切使っていないし、80486 以降の命令も使っていない、素の 80386 対応。 .text セクションが 109 バイトで、x86_64 版より 2 バイト短い。

基本的には似通った命令セットなのでほとんど同じような流れだが、以下の点は異なる:

REX プリフィックスがない分でやや稼げている感じがするが、x86_64 版も REX プリフィックスが最小限になるように作っていたのでそこまで差はついていない。 システムコールの件がトリッキーだった。 まず、番号が x86_64 では write が 1, exit が 60 だった。 それが i386 では write が 4, exit が 1 になる。 そして引数。 x86_64 ではどうやら %rdi %rsi %rdx という、C の関数呼び出しの規約と同様の順でレジスターが使われていた。 それが i386 では %ebx %ecx %edx となるようである。 (いずれも strace や gdb でどうなっているかを調べたものでありちゃんとした資料は参照していない。) 偶然にも 3 番目の引数だけはそのままでよかったが、1 番目と 2 番目は全然違うので対処が必要だし、%rsi に入っているバッファーの開始アドレスをそのまま引数に使うというのもできなくなったし、%ebx は別の用途に使っているため push pop も必要になっている。

x86_64 版のシステムコール部分は write をベースに準備し、条件分岐を挟んで、exit 用に値を差し替えるというもの。 これは write のシステムコール番号 1 と 1 番目の引数のファイルディスクリプターが一致するのを活用するためそういう作りになった。 i386 版は exit をベースに準備するがこの時に sbb と 1 バイトの inc を利用して 1 番目の引数の値を分岐前に生成してしまう。 そして write の時には番号を 4 にして 2 番目の引数を %esi にする。

16 ビットや 32 ビットのレジスターに 1 をセットする、っていうのがどうしても 3 バイト必要になってしまうのが x86 の悲しいところだな。

%2 もくようび

晴れ。 気温が上がったと NHK ラジオニュースでは言っていたが、そんなに暖かかった気はしない。 確かに数字は気象庁アメダスの東京府中でも 25 度を突破していたみたいだけど、午前中はひんやり感じて普通にセラミックファンヒーターをつけたり消したりしていた。

NHK ラジオと言えば、夕方 NHK-FM に切り替えたら野球中継で笑ってしまった。 日本シリーズの 5 回戦、タイガースとバファローズの試合だ。 なぁんで NHK-FM で野球中継なんか (笑)、と思ったら、首相の会見か何かをラジオ第 1 のほうでやっていたらしくて、優先度の関係で追い出されたようだ。 特に、NHK-FM の平日 18:00 台はいつも何かの再放送みたいなので、つぶしてもいい対象になっているんだろう。 今日はリトグリのミューズノートだったはずの時間帯。 他の曜日は THE ALFEE 終わらない夢が流れてきたり、松尾潔のメロウな夜が流れてきたりする。 なおそんな野球中継も 18:50 でいったん切れてニュースになり、続きは 19:30 からラジオ第 1 で、とのことだった。 18:50 時点では 0-0 だったが、後で調べるとタイガースが 6-2 で勝ったらしい。 それも 8 回に 6 点入れてね... バファローズからしたらなかなかダメージの大きそうな流れだな。

2023/11/02 のコメントを読む・書く


03 (金)

%1 FizzBuzz 高速版の話

以前実装したやつが 8192 バイトのバッファーでだいたい 3GiB/s 近いところだったが... dd if=/dev/zero bs=8192 | pv をやったらだいたい 2.9GiB/s あたりの近いところが出たw これの bs を倍倍に増やしていくと 32768 まではスループットがあがるが、65536 は 32768 とあまり変わらない感じだ。 たぶん FizzBuzz の例のやつもそのへんがベストなのかも知れない。

なお単なる write は 8192 バイト単位で 3.2GiB/s 近く出る。 バッファーサイズと write の方法を変えないならそれが限界ってことだな。

%2 文化の日

晴れ。 ちょっと暖かい日。 のんびりゴロゴロ。

午前中は本当にゴロゴロしていたが、午後は昼寝でもしようかなと思った頃に洗濯をし忘れているのを思い出し、洗濯が終わるまで適当にトイレ掃除なんかをし、みたいな、充実した祝日であった。

最近は夜が冷えるので散歩が復活しつつある。 20 度を切るぐらいだと散歩しても汗もかかないレベル。 散歩しながら腹筋や肩回りの筋肉に力を入れる。 神経痛を回避するにはやはり筋肉かなっていう。

夜に東京ラーメンフェスタ。 そばる、鶏白湯 colors レッド。 鹿児島で豚骨じゃないのは珍しいんだが、美味かった! ピリ辛は担々麺みたいな仕上がり。 塩っ辛いんじゃなくて、唐辛子って感じの。 いやー美味かった。 さすがは鹿児島のラーメン、レベル高い。

んで帰りにドラッグストアに寄ったらバイク用耳栓を紛失したのでもう一度発注w

環八通り沿いに砧 (きぬた) 公園という公園があり、その周囲の道が混雑回避に使えるっぽいという発見。 スクーターで行って、行きは競輪場方面から世田谷通りに出て、その砧公園のまわりを通って環八通りをこえて、用賀中町通りで 246 をこえて、くねくねと。 帰りは環八経由でその砧公園まわりを通って世田谷通り、狛江駅方向に抜けるつもりが曲がるところを間違えたが、まぁスムーズに国領に抜けられて、旧道経由で帰った。

テレビでやってた映画『スパイダーマン: ファー・フロム・ホーム』(原題: Spider-Man: Far From Home)。 2019 年のアメリカ映画。 いつまでスパイダーマンの映画作るんだw いや、有名なアメリカンコミックがいくつか取り込まれている感じだ。

2023/11/03 のコメントを読む・書く


04 (土)

%1 どようび

晴れ。 暖かい日。

泌尿器科。 こんでいた。 いつもの。 この 2 か月で数回、深夜 3 時台にトイレに起きた日があったものの、数回だけだった。 ついでで耳鼻科にも行こうかと思ったけど、予約がいっぱいだったので行かず。 薬局も 15 分か 20 分かぐらいかかり、某レストランの営業開始時間が近かったので昼食を食べて帰った。 おかげで駐輪場 200 円かかったけどw

泌尿器科に行く前に、水分補給をしつつ、東日本旅客鉄道の中央線 (中央東線・中央本線) の駅を眺めていたんだけど、何か違和感が。 列車が入線してくる時にメロディーが流れるようになったらしい。 2009 年に大阪で聞いた、謎のメロディーを思い出すんだが、もっと短い感じかな。 でもそれがループするので毎日聞いていたら頭にこびりつきそうである。 なお、西武鉄道は、列車進入警報装置というのがあって、回転灯が光り、踏切と同じ音が鳴る: 踏切ないのになぜカンカン… 地下鉄トンネルや高架駅でも“あえて使ってます” | 乗りものニュース- (2)

鹿児島駅8時38分発 わが心の集団就職列車 - YouTube

鹿児島駅がどうだったかなと思ったらこんな動画が出てきて、入線メロディーとは関係ないんだけど、集団就職列車の出発が鹿児島駅のほうだったんだなって。

F1 ブラジル GP 予選。 アルファタウリは Q1 敗退。 Q3 の途中で赤旗終了。 ピアストリがアタック失敗して (トラックリミットで?) ノータイムだったんだけど、他 9 人は全員タイムを出していたし、雨降り出しちゃったらもう順位変動はないな、といったところで、赤旗になって、それから大雨になったような感じだった。

F1 ブラジル GP スプリントシュートアウト。 晴れ。 SQ1 でオコンがアロンソとクラッシュ。 譲るアロンソと絡んでしまったオコン、ウーン。 アロンソがもうちょっとアウトに寄れたような気もするし、オコンが滑ってカウンターステアをあてたのでアロンソに向かってしまったようにも見える。 角田がギリギリ赤旗前に滑り込み。 SQ2 はアロンソは修理が間に合わなかったようで出走できず。 アルファタウリ 2 台とも SQ3 へ。 SQ3 はタイヤの関係で皆最後にアタックだ。 ノリスが速かった。 これで今年のスプリントのポールポジションはマクラーレンの 2 人とも達成した。 角田も SQ3 だけはよくて 6 番手。 そういえばリカルドはアルファタウリ復帰で完全に実力を発揮し始めたな。 マクラーレンであんなに苦労していたのとは別人のようだ。 F1 では時々そんなことが起きる。 マッサ、ライコネン、ボッタス、ガスリー、アルボン... 下位チームに移ってからけっこう活躍したドライバー達だ。

テレビアニメ『呪術廻戦』。 39 話。 領域に現れた新たな... 味方??? そして強い敵に一瞬にしてやられ... 眠っている主人公、すくなの器へ。 そして指。 すくな現る。 何人かが一瞬にして息絶えた回じゃないかと思うんだが、どうなるんだろ。

テレビアニメ『葬送のフリーレン』。 9 話。 魔族のさらにつよいやつ? 魔族 3 体に人とエルフの 3 人で対決か。 エルフの弟子、魔法のレベルはともかく、実はスピードが速い。 ドワーフの弟子は、ねばり強い。 こういう物語にはありがちだが、それぞれ特性があるようだ。

テレビアニメ『オーバーテイク!』。 5 話。 小山町マラソン大会。 10 km。 ゴールは富士スピードウェイ。 ジェームズハント。

2023/11/04 のコメントを読む・書く


05 (日)

%1 にちようび

曇りのち晴れ。 暖かい日。

F1 ブラジル GP スプリント。 フェルスタッペン余裕の勝利。 メルセデスとフェラーリはタイヤに苦労していた様子。 ノリス 2 位。 ペレスが 3 位。 そして角田がなんとハミルトンを抜いて 6 位。 よくやった。

お昼は久々回転寿司! 回ってくるのは注文した品のみ! わさびも完全にセルフサービスなので、間違えてわさび入りを注文してしまう心配もない! 今こんなになっているんだ! いろいろと驚きがありつつ、デザートにパフェまで食った。 パフェがファミリーレストランのみたいに大きくなくて、ちょうど良い感じ。

日本シリーズ第 7 戦。 タイガースとバファローズの戦いはここまでもつれ込んだのか。 インターネットでストリーミング配信されている。 DAZN ではなく、TVer にあった。 フジテレビ系列らしい。 3-0 でタイガースがリードしていると思ったら、あれよあれよと 6-0 になった。 9 回裏 2 アウトで出てきた最後の守護神の時に 7-1 になってしまったが (笑)、タイガースの日本一が決定。 前回は 1985 年だったというから、タイガースの日本一というのは人生で数回しか見られないのかも知れない。

テレビアニメ『16bit センセーション ANOTHER LAYER』。 5 話。 "miss Donut"。 タイムリープ法則発見し 1999 年! 弱小ソフト会社 (?) が儲かっている世界線w コンシューマー... 1999 年? 機種名言わないの嫌な予感するなw 何しろドリームキャストがあった頃だからなw 折りたたみ携帯電話。 万世橋ナンバー。

%2 自宅サーバー PC

自宅サーバー PC の Debian GNU/Linux 10 (oldoldstable, buster) を 11 (oldstable, bullseye) にアップグレードした。 かなり長く放置していたが、Debian Long Term Support のおかげで未だにサポート期間に入っていたのだった。 backports も面倒なのでそのままでアップグレードを実施。 うっかり security の path が変わったのを忘れていたが、他は特に目立ったトラブルもなし。 再起動前 uptime:

 20:06:46 up 224 days, 14:07,  1 user,  load average: 0.08, 0.04, 0.00

アップグレード後、IIIMECF が動かなくなっていたので対処した。 iiimp.el を見ると process-kill-without-query というところにコメントで obsolete since 21.1. とあるんだが、今まで使えていたらしい。 ついになくなったので、その次の行にコメントで書かれている set-process-query-on-exit-flag に置き換えた。 副作用は知らん。 Byte compile はしていないので、書き換えただけで OK。

あとはまた GNU screen がおかしいので古いパッチをあてる。 EUC-JP 運用のせいなんだろうけどなw

あとは、zd1211rw が動いていないな。 なぜだ。 と試行錯誤するも、もしかしてこのカーネルだめか??? ファームウェアのロードでエラーになっているが、Debian GNU/Linux 12 (bookworm) の iMac だとちゃんとロードされるし... コンチクショ。 このまま 12 にまでいってしまえ!

そんなわけで、12 にした。 12 では zd1211rw は動いた。 よかった。 しかし GNU Emacs がトラブった。 色の件はいい。 TERM=screen-256color で回避している。 問題は CPU を食いまくる。 なんでー。 他にも GNU Emacs 使っている環境はいっぱいあるのに。 調べてみると native compilation という機能が入って、せっせと elc を native compilation しようとするらしい。 この in-order processor の Atom Z530 でね! この古いプロセッサにどんだけムチ打つんだよ! EMACS_INHIBIT_AUTOMATIC_NATIVE_COMPILATION という環境変数を定義するとオフにできるらしいと知って、定義した。 他に回避策があるなら知りたい。

実は Redmine も 11 では動いていなかったが 12 では一応動いている模様。 スタイルシートが適用されていないけど、まぁいいや。 ほぼ使っていないし。

あとなぜか top コマンドの挙動がおかしい。 キーを押したときに 2 度更新される。 これはもしかして気づいていないだけで他の環境でも起きているんだろうか? とにかく、手元の現役環境の中でも最も遅い Atom Z530 なので、他では見えていなかった何かが見えているような気がする。

2023/11/05 のコメントを読む・書く


06 (月)

%1 げつようび

朝ちょっと雨の音がしていた。 あとは晴れだか曇りだか、そんなに暑くなかった日。 夜、散歩に出たら風が強くてちょっと雨が来るかと思ったが、散歩しているうちに風はおさまってきた。 少し生ぬるい感じの空気だった。 深夜に雨予報らしい。

F1 サンパウロ GP 決勝。 フォーメーションラップでルクレールがクラッシュ。 無線の言葉ではマシントラブルらしい。 そしてスタート直後に複数台のクラッシュがあってセーフティカーからの赤旗。 アルボンとマグヌッセンがリタイア。 ピアストリとリカルドは破片を拾ったか、修理が必要になり、再開時点で 1 周遅れに。 セーフティカーでも出れば同一周回に戻れたかと思うけど、出なかった。 最初のスティント、角田は一度ミスがあって順位を落としたものの、その後はペースが良かった。 あとはメルセデスがタイヤに苦労するという、スプリントで見た光景が繰り返されたが、ハミルトンは角田の前で走りきった。 ラッセルはトラブルなのか、リタイアしてしまった。 あとは 3 位表彰台争い、アロンソとペレスが最終ラップまでやり合っていておもしろかった。 解説の中野信治が冷静に、アロンソがバンクを活かした加速重視のライン取りをしているところを指摘していた。 さすがドライバー目線。 そういえば、このコースは前にもこういう最終ラップのギリギリバトルがあったよね。 アロンソ 3 位。 角田 9 位。 16 番手スタートで 9 位は見事だし、スプリントに続いてポイント獲得だ。 アルファタウリはコンストラクターズ 8 位、5 ポイント下にアルファロメオ、7 ポイント上にウィリアムズ!

F1 のスプリントレースがある週末は、スプリントレースが予行演習みたいになってしまって、決勝でどうなるか予想が付いてしまうという、確かにそういうところはある。 レースがたくさん見られるのはうれしいけど、同じ流れになっちゃうのは確かに良くないなぁ、と。 それに free practice が一度しかなく、それでパルクフェルメでセッティング変更ができなくなるということが問題視されている。 アメリカ GP では規定違反の失格が 2 チームから出たけど、あれも free practice の一度で決めちゃったセッティングでレース距離を走ったら底が削れちゃったっていう、そういう話じゃないかということだった。 金曜に予選をして、土曜にその予選とは無関係にスプリントシュートアウトとスプリントをする、というのも、流れ的にも微妙なところはある。 何が正解かはわからんな。

%2 Debian

なぜか ufw が inactive なことに気づいた。 SSH のアタックがてんこ盛りだw /etc/rc2.d/S12ufw が消されたのか? わからん。 今までどうなっていたのやら。 バックアップを見てみないとわからんな。

あとこれは自分が変な設定を書いていたみたいで IPv4 のポート 80 を inetd で扱って IPv6 のポート 80 を Nginx で扱うって、どうしてそうなったw 記憶にないぞw 適当になおした。

%3 GNU Emacs

EMACS_INHIBIT_AUTOMATIC_NATIVE_COMPILATION=1 の件。 そもそもはデフォルトでは eln は組み込まれないっぽい? という話で、Debian のパッケージメインテイナーが有効にしたって話だろう。 自分は今回初めて気づいたわけだけど、それは Atom Z530 という強烈に遅いプロセッサで触ったからだ。 どのくらい遅かったかというと、Mew での電子メールの取り込みが 1、2 分待っても全く進んでいなかった。 なんか重いなー、って top やら何やらで見て、emacs が CPU 食ってんな、って気づいて、戻ってきて、とやっていても進んでいなかった。

ネイティブコンパイルって響きからすれば、遅いプロセッサこそ役に立つはずとも言える。 それは同意するが、裏でゆっくりと進めてくれるのならともかく、実用にならないレベルで負荷をかけられては困る。 同じ Debian GNU/Linux 12 にアップグレード済みの HP の 3 万円ノートパソコンも相当遅い部類ではあるんだが、それでも A4-9125 は 2 コア 2 スレッドで out-of-order execution であり、1 コア 2 スレッドで in-order execution の Atom Z530 とは比べものにならないほど速いので、気づかなかったんだろう。 ネイティブコンパイルは使うごとにちょくちょく実施されているようで、例えばうっかり C のソースコードを開けば cc- で始まる様々なファイルがネイティブコンパイルされるというわけのようであり、そういうのは Atom Z530 みたいな雑魚プロセッサには大変な重荷であるので、やはりオフにしておくのが正解だろう。

他に気になるところとしては、これマルチユーザーで使うとそれぞれのホームディレクトリにネイティブコンパイル結果が蓄積されるってことだよな。 なんでそんな無駄な仕組みにしたんだろう。 特に、HP のノートパソコンなんてたいしてカスタマイズもしておらず、Debian のパッケージでインストールしたもののみで構成している。 それなのに ~/.emacs.d/eln-cache/28.2-e4556eb6/ には 61 個ものファイルが作られている。 これ、例えば root ユーザーでも GNU Emacs を使えば、やはり root のホームディレクトリにいろいろ作られるということでは? 何とももったいない話である。

アーキテクチャーが違うとそのディレクトリ名が変わるようなので、ホームディレクトリを NFS 等で共有している場合の問題はないんだろう。 Atom Z530 は 32 ビット CPU なので、ディレクトリは ~/.emacs.d/eln-cache/28.2-e26d37e1/ になっている。

2023/11/06 のコメントを読む・書く


07 (火)

%1 かようび

朝は嵐。 深夜には大雨が降っていたし、今朝は台風ですよと言われたらあーそうなんですねと言ってしまいそうなほどの強風だった。 昼は暖かく、夜は涼しくなった。 リビングの温度はそこまであがらず、一時ヒーターも使ったぐらいで、快適であった。

東京 世田谷区でガソリンスタンドの支柱折れ屋根落下 強風か | NHK | 気象

えええ、台風でもないのに折れちゃったの!? 川沿いの三菱商事の給油所だな。 給油所の屋根の支柱なんて全国一緒でしょ、と思っていたんだけど、Google Maps で見てみたら、沖縄県や奄美大島の給油所は、やたら柱が太かったり多かったりしているような... そうか、そうだよな、冷静に考えたらね、あのへんには 920 hPa みたいなとんでもない台風が来ることもあるからね... でまぁ戻って世田谷区内の別の給油所を見てみたらそこも柱が太くて、なんだ、うん、よくわからんなw

テレビアニメ『MF ゴースト』。 5 話。 レース。 プロジェクト D、公道最速理論の進化系... 『頭文字 D』用語がまたしても。 ポルシェ、ランボルギーニ、フェラーリ、ロータス、... 『頭文字 D』には出てこなかったような高級車が勢揃い。 主人公の過去、講師として Takumi Fujiwara の名前も。

テレビアニメ『るろうに剣心 ―明治剣客浪漫譚―』2023 年版。 18 話。 けんか屋の話。 絵を買いに行く。 どうやって畳をあげた? 畳が勝手に浮かなかったか?w

%2 procps

Debian GNU/Linux 12 にしてから top コマンドの挙動がおかしい。 スペースキーや Enter キーを押したときに表示が 2 度更新される。 Atom Z530 が遅いのと SSH 経由だったからたまたま気づいただけで、他の環境では 2 度更新されていることには気づいていなかった。

top: avoid '%Cpu' distortion resulting from keystrokes (7e33fc47) - コミット - procps-ng / procps - GitLab

これで修正されている。 2 度更新されるために CPU 使用率の計算がおかしくなる、というのがこの修正の主目的だったようで、メッセージを読む限りは、やはり開発者の方も 2 度更新されていることには気づいていなかったんだろう。

で、このパッチを当てるか、testing から新しいバージョンを拾ってくるかすればいいんだろうけど、実は回避策がある。 NUL (Ctrl+Space など) を入力すれば、一度だけ更新されてちゃんと動くのだ。 実際ソースコードでも扱いが異なっている。 少しトリッキーだけど、Debian GNU/Linux 12 を使っている環境がたくさんあって、全部パッケージを入れ替えるのは面倒くさいので、この手でいこう。

2023/11/07 のコメントを読む・書く


08 (水)

%1 すいようび

晴れ。 そんなに暑くない日。

早めの昼休みに耳鼻咽喉科。 いつもの。 今年は 10 月頃ちょっと症状が強い人が多かった印象らしい。 自分も 9 月から 10 月にかけてよく鼻が痛くなっていたからなぁ。 先週から調子がよく、この先はしばらく調子が良い予定 (?) だが、年によっては 12 月の最初の頃に少しスギ花粉が飛ぶことがあるんだそうで、それを乗り切れば 1 月までは何とか...?

続けて整形外科。 リハビリテーション。

ウォーキングの時に、お腹に力を入れていると楽な感じがする。 お腹をへこませたり戻したりしながら歩くと腹筋運動のかわりになるぞ、みたいなうさんくさい記事がどこかにあったが、力を抜くと座骨神経痛っぽい症状が出る。 歩くときの衝撃の影響なんだろうな。 なので力を入れっぱなしのほうが楽で、ダイエット的には効果無いのかも知れないけどね。 まぁ要するに筋力が落ちないコルセットだと思えば。

Kyash というプリペイドカード、実は有効期限を目前にして、100 万円の累計利用額上限が近づいて、再発行になっていた。 チャージ額ではなく、利用額であるので、あれ、最後まで使い切れないじゃないの? みたいな状態にもなる。 手数料は期間限定で無料とのことで、再び無料で新しいプリペイドカードが手に入った。 再発行でカード番号が変わる。 前回はまだ Lite って名称になる前の頃で無料だったので、結局一度も手数料を払っていないっていうね。 Kyash Card Virtual は下位の扱いで、後から移行はできないみたいだ。 いったん退会すると 3 か月は作れないとのことで、3 か月あけたら Kyash Card Virtual を作れるってことか。

Revolut はチャージ手数料がかかるようになって以来一度もチャージしていなくて、たまに漫画雑誌の電子版を買う時に使っている程度である。

テレビドラマ『トクメイ! 警視庁特別会計係』。 4 話。 署内盗撮盗聴調査。 うさんくさい幸運のお茶。 「西万町大学」。 マルチ。 詐欺。 「満面ファクトリー」。

2023/11/08 のコメントを読む・書く


09 (木)

%1 もくようび

晴れ。 涼しい日。

午後出社した。

帰ってご飯食べてから、また原付で出発して買い物。 最近、レトルトみたいな感じで野菜が入っているスープみたいなやつがあるのを知って、それにグリコのシチューのやつがあっておいしかったんだけど、と思ってスーパーをまわったが、なんか店によって品揃えが全然違ってよくわからない。 グリコのシチューのやつなんて全然見かけないし... 最初に見つけたドラッグストア W は改装中につき今は買えない。 次に買ったのがスーパー K だったかな、そのグリコを含め何種類かあって、袋ごと電子レンジ調理ができないタイプがあったのもそこだった気がする。 今日行ったドラッグストア S には見当たらなかった。 今日行ったスーパー S には Korean 系のがあって、まぁそれはそれでおいしいかも知れないと思って買ってみた。 別のスーパー S には最初に見つけたようなシリーズのがあった。

Google ウォレットの QUICPay+ はカード番号が変わったら再登録が必要なようだ。 まぁそれもそうかというところだけど、いざ支払いという時に失敗して初めて気づくというのが微妙に残念であるw

原付、ジョルカブはやっぱり楽しいし、めちゃくちゃ静かだ。 30 km/h 制限だから、っていうんじゃなく、20 km/h で走っても静かだ。 アドレス V100 は 2 ストロークエンジンだからうるさいのかなというのと、機械式の無段変速なので回転数をおさえて走ることができないのが関係しているかな。 400X は、エンジンむき出しなのと排気量の関係なのかな... まぁ GSR250S も別に静かではなかった気がする。 ジョルカブは自然空冷エンジンなので、風があたるようになっているしメッシュカバーだしでそこまでエンジンが隠れている気はしないんだけど、スーパーカブ系エンジンの特性だろうかね。

2023/11/09 のコメントを読む・書く


10 (金)

%1 Debian GNU/Linux の話

アップグレードの話ではなくてね... 昔、といっても 22 年ちょっと前ぐらいの話だが、Omoikane GNU/Linux から触りだした Debian GNU/Linux で、最初の頃はよく自分でカーネルビルドをやっていた。 NVIDIA の XFree86 driver の関係だったか、そのほかの理由だったかは忘れてしまったが、まだ initramfs もなくて、initrd も使っていたかどうか、みたいな頃だし。 あの頃は Debian GNU/Linux 2.2 の本の解説を参考に、linux-source-バージョン、というパッケージを入れて、.config の設定などを済ませて、make-kpkg というコマンドでカーネルパッケージをビルドしていた。 2004 年に何かやっているのは大学の研究室のノートパソコンの話で、やはり make-kpkg コマンドを使っている。

で... そのあたりからだんだんとカーネルビルドする機会も減っていって、いやまぁ仕事ですることは時々あるんだけど、ちょっと試すだけのためにわざわざパッケージ作らなくてもいいや、ということで、make-kpkg コマンドを使わなくなって早 10 年 (本当か?)、みたいな。 とにかく、コマンド名すら忘れていたことに気づいて自分で笑ってしまった。 頭の中で dpkg-buildpackage とごっちゃになっていた。 カーネルパッケージだよなー、でもマニュアルを検索しても出てこないし、パッケージを検索しても出てこないし、何てコマンドだったかなー、というところで、トイレに行ったときにふと、make-kpkg という名前が頭によみがえってきて、検索したら、なんとこのコマンド、消滅していた。 そっかー! 過去の話だったかー!

今は、カーネルソースの Makefile のどこかに書かれている、deb-pkg あるいは bindeb-pkg というターゲットを使うらしい。 一度見たらいろいろ思い出して、fakeroot make-kpkg --initrd kernel_image みたいな感じで使っていたな、となったけど、もうこれは忘れていていいのね。

%2 Pascal

Basic Pascal Tutorial/Contents - Free Pascal wiki

Pascal のチュートリアルだ。 Free Pascal という Pascal コンパイラーのサイトだけあって、うさんくさい資料よりは整っている感じがする。 とはいってもあまり詳しい説明はない。 まぁチュートリアルだしな。

program FizzBuzz;
var i : 1..4294967294;
begin
  for i := 1 to 4294967294 do
  begin
    if i mod 15 = 0 then writeln ('FizzBuzz')
    else if i mod 5 = 0 then writeln ('Buzz')
    else if i mod 3 = 0 then writeln ('Fizz')
    else writeln (i);
  end;
end.

FizzBuzz を書いてみた。 遅いけど、ちゃんと動く。 Pascal ってほとんど触ったことがないけど、subrange って型はおもしろい。 あの高速化の話を試すにはまだ Pascal の知識がなさすぎる。

%3 きんようび

曇り時々雨。 涼しい日。

テレビでやってた映画『スパイダーマン: ノー・ウェイ・ホーム』(原題: Spider-Man: No Way Home)。 2021 年のアメリカ映画。 日本公開は 2022 年。 何この漫画みたいな展開... あっ、原作はアメリカンコミックだから漫画かw 懐かしのスパイダーマン (21 世紀の映画版) の主役が他にふたりも出てきたよw 敵にも懐かしい顔がいるしな。 Tingle を信じろ! 記憶操作の魔法。

2023/11/10 のコメントを読む・書く


11 (土)

%1 どようび

晴れるのかと思ったらずっと曇っていた。 チラッと雨がぱらついた時もあった。 寒い日。

図書館に行って、古い朝日新聞を検索した。 1999 年までの記事は、ちゃんと全国版の地域面まで検索できる。 それより後のことはよくわからない。 鹿児島の地域面はだいたい 1 面から 2 面だったようである。 出身中学でリアルにあった暴力沙汰のニュースがどっかにあるかと思ったが、見つからなかった。 鹿児島の図書館で南日本新聞を検索した時にも出てこなかったしな。 謎だ。 なお、田舎の祖父母の家の町にあった県立高校が廃校の危機という記事はあった。 その記事から 9 年後に閉校したんだな。

テレビアニメ『呪術廻戦』。 40 話。 渋谷。 渋谷の大変な現場にいる先生の喫煙シーン。 細かいいざこざの後は特級バトル。 呪霊と、主人公を乗っ取っている呪霊と、特級同士でも格が違う。

テレビアニメ『葬送のフリーレン』。 10 話。 フリーレンの過去、魔法使いの先生との話の振り返り。 今回はいろんな魔法使いによくオーラが出てくる。 魔力が魔族の階級、そして魔王。 魔力をごまかして魔族を欺いて勝つ!

テレビアニメ『オーバーテイク!』。 6 話。 鈴鹿。 検索エンジン "Mauchly BETA"。 雨。 濡れた路面と乾いた路面の表現は苦労していそうだな。 現実のレース中継の映像のほうがその境目はわかりやすく映し出される。 そしてスリックタイヤで雨はあっという間にレインタイヤに抜かれると思うけど?w 主人公のライバルが、追突スピンからの T ボーンクラッシュ。 これはね... まぁたまにあるんだよねそういうの... 2019 年の F2 の死亡事故もスピンした車両に横から突っ込んでいたからね... 自分なんかが出るようなアマチュアカートレースはスピードが遅いのでそこまでひどいことにはならないけど、たまーに横転事故はある。

%2 Lazarus

Lazarus という Free Pascal の統合開発環境があって、ちょっと触ってみた。 apt install lazarus で入るんだが何かが足りないらしく、apt install fp-units\* で押し通した。

さてこれ、往年の Visual Basic を思い出すようなできばえだ。 使い込むとどうなるのかわからないが、少なくとも取っつきやすさの点ではすばらしいものがある。 立ち上げたら最初っから Form1 が出てくる。 メニューを適当に漁ると [表示] メニューに [コンポーネント] というのがある。 それを押すと button とか label とかいかにもなコンポーネントが並んでいる。 適当に button をダブルクリックするか、または、シングルクリックしてから Form1 の中でクリックすると button が配置される。 [実行] メニューの [実行] を選んだら、名前を付けて保存すらしていないそれがコンパイルされて起動する。 うわぁ、簡単!

当然、配置した button をダブルクリックすれば procedure TForm1.Button1Click などとソースコードに書き加えられてソースコードエディターに切り替わる。 素の Pascal すらよくわからん自分にはオブジェクト指向 Pascal のことなどさっぱりだが、試行錯誤してみると、Form1.Label1.Caption := 'hoge'; という書き方で label の変更に成功した。 コード中には var のところに Form1: TForm1; と最初から入っていて、その下に勝手に foo : integer; を書き加えて、Form1.Label1.Caption := inttostr(foo); とかえたらちゃんと数字が出るようになった。 (inttostr については web 検索して調べた。) foo := foo + 1; も書き加えれば button をクリックするたびに数字が増えていく。 ほぉー、簡単!

Delphi の経験があるならさらにすいすいいけるんだと思うが、この手のパソコン用 GUI 開発環境は Visual Basic しかまともに触っていない自分でも、おおかた想像が付く範囲でぺこぺこ触れるのは楽しい。 しかもこれでクロスプラットフォームなんでしょう? すごいんじゃない?

といいつつ 7 年前には Qt Creator っていうのを触ってみたこともあった。 あれはあれで悪くはなかったが、C++ なのでプロパティがなくて、いちいちメソッドを使うのが、元 Visual Basic 愛用者としてはやや面倒くさい感じがしたっけ。 Windows なら Visual Studio で C# あるいは Visual Basic (.NET) という選択肢もありだが、マルチプラットフォームとなると Mono で実行はできても、統合開発環境としては、MonoDevelop は開発終了したみたいだし、Windows しかないんじゃないかな。 あとは Eclipse で Java でみたいなのはあるんだろうけどね。 Lazarus は、かつて Delphi が盛り上げた Pascal の発展版の言語で、競合が少ないので人気が分散せず、地道に開発が続いて生き残っている珍しいパターンだろう。

今時のはやりの言語といったら Go や Rust なんかがあるんだけど、それらの GUI フレームワークはあまり定番ものがないらしい。 Go は自分がほとんど触ったことがないせいもあるが、なんだかんだ乱立していてよくわからんという感じがある。 そんな状況だから今はまだ統合開発環境でポチポチやってできるような世界じゃない。

なお、プログラミング言語のプロパティというのはいつからあったのか、調べてみたんだけどわからないw Object Pascal かと思ったけど Delphi でプロパティが導入されたよって説もあり、それならば少なくとも Visual Basic のほうが早いことになる。 でも 1990 年代の Visual Basic は厳密なオブジェクト指向とはちょっと違っていて、オブジェクト指向っぽい概念が多く取り入れられた言語だった。 あるいは Smalltalk にあったというプロパティが由来なのかも知れない。

2023/11/11 のコメントを読む・書く


12 (日)

%1 FizzBuzz Pascal 版

20231112-w.pas

30 個ずつまとめただけでまだ高速版とは言い難いが、一応 120MiB/s ぐらいが出るバージョン。 改行コードを LF 限定で書いてあるため Unix 環境でしか正しく動作しないだろう。

strace で見ると 256 バイトずつの write になっている。 内部のバッファーが小さいんだな。 それを増やすことができればそれだけでもだいぶ性能あがりそうだけど、今は数値から文字列への変換も標準的なものなのでそんなにはいかないと思う。

%2 Pascal と Basic

Basic は久しく触っていないので忘れかけているものの、Pascal を触ると何か思い出してくるものがある。 QuickBASIC や Visual Basic と比較して、以下のような共通点がある:

昔の (QuickBASIC より前の) BASIC と比較して、以下のような共通点がある:

Pascal コードを書いてみて躓くのは、慣れない :=; の独特な使われ方だが、:= はともかく、; は昔の BASIC の IF 文を思い出すと納得できなくもない。 IF A THEN B ELSE C スタイルなのは基本的に Pascal も同じで、複数の文を入れる場合は、BASIC でいう : の代わりに beginend を使って、その中で ; を使っていくが、; は IF 文全体の最後につく感じ、すなわち BASIC で言う行末にあたる部分に ; を入れる。 ちなみに end の直前は ; を入れても入れなくても良いが、ソースコードの編集のしやすさと、バージョン管理システムの diff のことを考えれば、入れるほうが後々便利だろう。 for なんかは do もあるのでどっちかというと MS-DOS の COMMAND.COM にある FOR を思い出す感じかな、あれは複数コマンドを書くことができなかったが、あれの行末にあたる部分に ; を入れて、複数行書きたければ beginend を使う感じで。

文字列型に関しては C の NUL 終端と違い、長さに上限ができるものの、NUL 文字を含むことができるのと、NUL 探索の必要がないのでパフォーマンス面では有利なはず。 strcat や、printf%s にしたって、あるいは puts にしたって、NUL を探索しなくても長さがわかりきっているなら、いきなりメモリーコピーを始めることができる。 実際、上のプログラムで使った Pascal の write 文は、文字列のアドレスを順に渡していくような機械語になっていて、それが NUL 探索をしないのはだいぶ有利だろうとは思う。 まぁ、それ以外が全然効率良くないのでアレなんだけどw Free Pascal がはき出したバイナリを逆アセンブルすると結構ね、DOS 時代の高級言語のプログラムを思い出すような、なんでこんな無駄なことやってんの!? みたいなね... Free Pascal は LLVM 対応も進めているようなので、将来的には LLVM 対応アーキテクチャーではだいぶマシなコードが生成されるようになるんだろうけどね。

%3 にちようび

曇り。 たまにパラッと雨。 寒い日。

テレビアニメ『16bit センセーション ANOTHER LAYER』。 6 話。 コンシューマー移植の続き。 監視役。 「エロゲー」が「美少女ゲーム」へ。 たまごっちの流行が終わっていた、それはそう、1999 だろ? AIBO かぁ、そういうのもあったね。 そして事件。 「節電」、あの頃からあったかな? 熱い主人公。

このアニメのエンディングに出てくる PC-98, RA か DA か、フロッピーディスクドライブのアクセスランプと、電源ランプの横のアクセスランプが同時に点滅するのがなんか違和感があるんだけど、それは電源ランプの横はハードドライブのアクセスランプだったんじゃないかと思うからだ。 実家で使っていた 9801RA2 はハードドライブは外付けだったのでそのランプは光っていなかったはず... でも実際光ってもおかしくないような気もしてきた。 PC-98 のフロッピーディスクドライブのアクセスランプは、IBM と違って、データ転送中のみ光るようになっていた。 (IBM は JX を含めドライブ選択・モーターオンの時に光る仕掛け。) で、ハードドライブのほうはよく知らないんだけど、IDE とか SASI とか、そのへんの仕様で、フロッピーディスクドライブと同じ内蔵の 8 ビット DMA を使ってデータ転送をしていたはずだ... なのでもし DMA とアクセスランプがつながっているのなら...

いや待って、それだと DMA 使わないで転送したら光らないことになるからおかしいな。 検索するとマザーボードから HDD のアクセスランプの信号線がきていたらしい情報があった。 やはりハードドライブ用か。

ウォーキングは歩幅を広くするのを意識するとだいぶ足の負荷があがるような感じがする。 ダイエット的にはそのほうがいいかも。 座骨神経痛的にはいいのか悪いのかよくわからないので様子を見るしかない。 今日は大丈夫だった。

2023/11/12 のコメントを読む・書く


13 (月)

%1 FizzBuzz Pascal 版の少し速い版

20231113-w2.pas

バッファーサイズの設定の仕方がわかり、少し高速化した。 1 分 40 秒ぐらい。 C とアセンブリ言語でいろいろやった経緯から言えば、まだまだできることは多いんだけど、文字列の一部を書き換える (move?) のがいいのかな、さすがに型を無視して 8 バイトを一回で書き込むのは無理かな、あるいは packed でいけるのかな? などと、Pascal の知識がないのでいろいろ想像が膨らむ。

Pascal の配列の表現、var buf : array[1..8192] of byte; っていうのも、Visual Basic の Dim buf(1 To 8192) As Byte にも引き継がれている感じがちょっとある。 ただ、この Pascal の 1..8192 は、なんと型らしい。 例の subrange だ。 なので、enumeration もそのまま配列の添え字に使えるっていうことだ:

type hoge = (foo, bar, poi);
var hogedata : array[hoge] of integer;

このへんは今見てもおもしろい言語だな。

%2 げつようび

晴れ。 寒い日。

寒いのでずっとエアコンつけていたらだいぶ乾燥していた。 が、まぁ、まだ 30% こえているからマシなほうだ。 冬になったらもっと乾燥するからなぁ。

インターネット (笑) では時々、田舎は都会より生活費が安いのか論争が繰り広げられる (笑)。 毎回決まって、どんな田舎が想定されているのか書かれていないから、話がかみ合わない (笑)。 例えば、ここ東京競馬場がある府中市だって、中央道のすぐそばに田んぼがあったり、コイン精米所があったりするので、ちょっとした田舎のようでもあるし、実際、昔は田舎と言ってもおかしくないようなところだったんだろうと思われる。 宿場町だけどね。

まぁ、それはともかく、自分の感覚的には、子供の頃に長く住んでいた鹿児島市は田舎とは言えない。 近所に田んぼなんてなかったし (笑)。 生まれたところの国分市はまぁ、田舎かなー。 今は霧島市、年に数回帰省した時に見るだけだけど、あのあたりは生活費は安そうではある。 それは、家賃が安そうなのと、地元産の食べ物が安いっていう... 例えば、鹿児島だと鹿児島県産の黒豚は関東より遙かに安い、みたいなのはある。 九州は鶏を出荷しているところも多いから、それも安いと思う。 野菜はそんなに変わらないかな。 ガソリンは安くはなさそう。 飲食店が安いのは人件費の関係か。 総菜も安いんじゃないかな。

でもまぁ、そんな田舎の感覚ってわからんよな、住んだことはないし、と思っていたが、冷静に考えたら、茨城県に住んでいた時のあのあたりは田舎だった。 5 分ちょっと歩けば田んぼが見えてくるところに、7 年も住んだじゃないか (笑)。 まぁ生活費は安かったね。 東京郊外の 1K の家賃ぐらいで、茨城なら一戸建てがある、みたいな、そんな世界だったし、ドラッグストアで買う牛乳なんかも安かった。 牛乳も、栃木県とか群馬県とか、北関東で間に合っているというかね、やっぱり近いのは有利なんだよな。 学生向けっぽい弁当屋さんも、キャベツたっぷり弁当 210 円、みそ汁無料、みたいなのは、さすがに安いよね。 コンビニはどこもほとんど同じだけど。 もしカワチ薬品にもカスミにも行かずにコンビニで済ませる生活をしていたなら、東京と変わらなかっただろう。

2023/11/13 のコメントを読む・書く


14 (火)

%1 バイクの話

ホンダ 400X の後継? に NX400 というのが話に出ている。 が、これが 270 度クランクらしい。 つまり NC750X みたいなドコドコするやつだ。 NC750X に 1 年ちょっと乗った結果、個人的には振動は小さなほうが好きだ。 つまり 400X を買っておいて正解だなw

ま、それはいいとして、なんとハーレーダビッドソンが X350 という普通二輪クラスの新型車を出したらしい。 ハーレーダビッドソンといえば V 型エンジンだが、この X350 と、ひとまわり大きな大型二輪の X500 という新型車は、直列二気筒エンジンを採用しているとのこと。 で、クランク角はなんと 360 度とのことだ! 直列二気筒で 360 度ってことはピストンの上下の動きによる振動が打ち消されないわけで、採用車種は少ない。 そんな珍しいエンジンと、ちょっと車重が重いのが、他との差別化だろうか。 スクリーンもない、カウルもない、0.35 L クラスのバイクで、195 kg というのは正直重い。 でも重いほうが横風に流されにくく長距離は楽になるからね、そのへん、小さくなってもハーレーダビッドソンらしいところなのかも知れない。

バイクで振動が少ないって言ったらバンク角 90 度の V 型二気筒エンジンだ。 二気筒でクランクを共有するので横置きであれば横幅が狭く、しかもバランサーがなくても振動が小さいらしい。 V 型エンジン車で公道で乗ったことがあるバイクはヤマハ ドラッグスター 250 だけ、バンク角は 60 度だそうで、特に振動が小さいとは思わなかった。 国産の現行車種で言うとスズキの SV650 やら V ストローム 650 やらが 90 度の V 型エンジン搭載車。 もっと大排気量のものもあるけど、普通二輪クラスのほうは消滅している。 SV650 はスクリーン・カウルがないものの、199 kg で親しみが持てる (?) 車重だが、まぁ、そう、V 型エンジンはカムシャフトが別々に必要になるぶん重量で不利だし、0.65 L の排気量も当然不利なのに、ハーレーの X350 がこれより 4 kg しか軽くないのはちょっとね...

%2 かようび

晴れ。 朝の冷え込み方がすごかった。 頻尿もすごかった。 夜は散歩しに外に出た感じではきのうほどではなかったと思う。

Pascal。 SwapEndian という関数でバイトスワップできるらしい。 あと byte の array に型をつけておいて、その型名を関数名みたいにして使うとキャストになるのかな、その手で 64 ビット値を 8 ビットずつアクセスできるようにする手があるようだ。 あるいは move って procedure を使えば 64 ビット値をそのまま文字列の一部にコピーすることもできる。 意外と C みたいなこともできる言語なんだよな。 ポインターとキャストでごちゃごちゃするのもできるのかも知れないけど、そこはよくわからない。

テレビアニメ『MF ゴースト』。 6 話。 Takumi Fujiwara は悲運のラリーストなの?w そんな設定なのか。 リアエンジンのブレーキの話。 オーバーテイクが決まっていく。 なんでストレートでリアウィング立てるんだ? 逆じゃね? コーナリングで抜き、パワーの差で抜かれ。 レースは 2 周目がある。 はてさて。

テレビアニメ『るろうに剣心 ―明治剣客浪漫譚―』2023 年版。 19 話。 けんか屋と昔の仲間。 の、けんか。 解決して、その後。

テレビドラマ『トクメイ! 警視庁特別会計係』。 5 話。 コンピューターウイルス? ランサムウェア。 管理官。 小鳥ちゃんだった過去。 名物もやしカレー。 管理官に部屋を取られた副署長。 「ばか」を連呼するキャリア (笑)。 「Chat Pipo」「チャットピーポー (仮)」。 問題解決!

2023/11/14 のコメントを読む・書く


15 (水)

%1 FizzBuzz Pascal 簡易的な高速版

20231115-w3.pas

46 秒ぐらい。 write に渡すのを細切れの文字列じゃなくてまとまった文字列にして、move で途中の数字を書き換えていく版。 やはり細切れのデータをバッファーにコピーしていくのは効率が悪いんだろう。 writev システムコールで全然速くならなかったのと同じような感じ?

んでこれもまだまだチューニングの余地がある。 packed というキーワードを使えば、C で書いた時みたいな構造体を作ることができそう。 でも文字列じゃないと write できないのでは、というところだが、同じバイト数の char の配列の型を別途宣言しておいて、それにキャストをすれば、write できてしまうみたいだ。 つまりポインターをこねくり回さなくても、move も使わなくても、普通に 64 ビットで値を代入していって write に渡すというのはできる。 C++ で書いたやつみたいにきれいに書くのは難しそうだが、SwapEndian もあるし、同じ作戦で高速化の見込みがある。 バッファリングの解除ができないのかも知れないが、それでもそこそこのところまではいけるんじゃないか。

%2 すいようび

晴れ。 寒い日。

TIME DISH っていうレトルトおかずのサムゲタンってのを食べてみたらなかなか美味かった。 朝鮮料理なんだろうけどキムチみたいな辛いやつじゃない。 まぁ、その TIME DISH ってのは割とお高くて、スーパーで買ったときにたまたま賞味期限が近くて半額だったから割安な感じだが、値引き前は 400 円超の値段がついていた。 湯煎だけでなく、袋ごと電子レンジ調理も OK で、肉も野菜もとれる便利なやつだから、そんなもんなのかも知れない。 量も少ないんだけど、夜は少なめでいいかな、っていう...

2023/11/15 のコメントを読む・書く


16 (木)

%1 FizzBuzz Pascal だいぶ高速版

20231116-w4.pas

実は、文字列の一部を qword で書き換える超邪道っぽい方法も発見はしていた:

qword ((@z[2])^) := qword (100);

こんな感じで強引に書き込むことはできるらしく、これは C で言うところの *(uint64_t *)&z[2] = 100; みたいなものと言えよう。 ポインターを介すことで、長さが吹っ飛んでしまってキャストができるらしい。 まぁしかし、アドレスオペレーター @ というのは Borland の拡張とのことで、標準仕様にはないんだね! ほー!

というわけで、作った上のプログラムだが、これは packed を使っているので、これもまた何かの拡張であろう。 と調べると packed は ISO 7185 に定義されているらしい? へぇ? まぁいいや。 こんな趣味の遊び、動けばいいんだよ、動けば!

これで実行時間は 17 秒ぐらいだ。 先月の 30 ずつ書く C バージョンと同等、なかなかいい線だな。 逆アセンブルするとだいぶ call がたくさん出ている感じがするが (小さな関数もインライン展開はされていなくて、バイトスワップでさえも call になっている)、メモリーに埋めていく部分は期待通りの mov の羅列。 今時のプロセッサの分岐予測がきけばこんなものなんだな。 まぁ、後は Pascal の write と libc の fwrite の差というかね。

SwapEndian よりも、やりたいことを表している NtoBE を使ったが、他のアーキテクチャーでまともに動かなくてもびっくりはしないし、そもそも x86 でもオペレーティングシステムによっては改行コードで躓くという話もある。

16 進数定数の表記がプリフィックスで $ というのはあまり予想していなかった。 8 進数は & で、2 進数は % だそうだ。 なんかこう、もうちょっと拡張性のある手法はとれなかったのかね? C の 0x にしても、BASIC の &H &O にしても、将来増やす余地もありなかなかわかりやすい表記だと思うんだけど。 (C の 0 をつけたら 8 進数というのがわかりにくいことについては見ないふりをする。)

%2 もくようび

晴れ。 そんなに寒くなかった。 明日の午前中は荒天の予報だ。

NTT ドコモの携帯電話回線、都心であまりにつながらないのを最近は改善しつつあるという話が報道されていたが、実際のところ結構つながらないみたいで、他社に乗り換えたとか、乗り換えたいとか、そういう話を耳にしつつある。 空港でつながらないとか、駅でつながらないとか、昔のムーバっていう第二世代携帯電話の頃や、ごく初期の FOMA っていう第三世代携帯電話の頃にはそういう話もあったけど、2023 年にもなって聞くことになるとはね! おそらく問題になっているのは都心だけなんだろうが、とはいえつながらないのは困るよな。

Y!mobile の PHS から移行してもう 3 年経った。 PHS と比較して特にエリアが狭いという印象はないし、通信スピードも気にならない。 PHS が最後までエリア外だった祖父母の家でも使える (笑)。 渋谷のような街中、空港や港でつながらないという状況にも今のところ遭遇していない。 音声通話は音質は良い。 PHS 同士に比べると、背景の雑音が消されるのと、やや遅延が大きい感じがするものの、そのへんはどうしようもないか。 第三世代携帯電話のこもったような音を思えば、比べものにならないほど良くなった。 時々変な繰り返しみたいな音になる現象は、前の Android One S6 に比べて今の Android One S9 のほうが遙かに頻度が低くなったので、たぶん端末のせい。 過疎地のエリアはたぶん povo に負けているんだろうと思うが、それはフェリーに乗った時の経験や、高速道路でインターネットラジオが切れてしまった経験による。

歩幅を広くしてせっせと進むウォーキングでも、Google Fit の計測によれば、1 km あたり 12 分から 13 分かかっている。 ...なんだ、この表記? まぁつまり、時速 5 km は出ていないということだ。 自分的にはかなりがんばったなーという速さなんだけど、そんなもんか。 駅徒歩何分の情報は時速 4.8 km だそうで、自分的にはかなりがんばらないとクリアできない。 Google Maps のルート検索で試してみると徒歩は時速 4.3 km ほど。 それぐらいならいけるな。

2023/11/16 のコメントを読む・書く


17 (金)

%1 FizzBuzz Pascal 高速版

20231117-w5.pas

11.8 秒ぐらいまで来た。 前に C++ でやったのと基本的には同じ、バッファーサイズを決めてそこまでがんがん埋めて、まとめて書く。

っていう話なんだけどまずはバッファリングをどうやってやめるのか。 バッファーより大きなサイズを write しても毎回同じアドレスが write システムコールに渡されていたからそれはメモリーコピーが走っているということで、他の方法が必要だ。 Pascal にはテキストファイルを扱う text とバイナリファイルを扱う file っていうのがあって、バイナリのほうにはバッファリングがないようだ。 しかし標準出力である outputtext であり、バイナリを出力するにはどうすればいいか? というと、なんと assign にファイル名として '' を指定すると標準出力 (標準入力も?) が選択できるらしい。 ということで file で標準出力が扱えることがわかった。

次に file に書き込む方法だが、write でもいいんだけど write には長さが指定できず、file of 何々で指定した型の書き込みとなるらしい。 それは面倒だなと思って探していたら、blockwrite というのが出てきた。 これは fwrite みたいに、ある長さに指定の回数をかけた内容を書き込むもので、fileof を指定しなかったら 128 バイトになっていたっぽいな。 なので of char にして、バイト数を指定することにした。

あとは適当に packed record を配列にして書くだけだ。 手抜きで 1000000 以降しか高速化していないけど、十分いい感じになっている。 と思いながら最初書いたコードを逆アセンブルしたら笑った。 rec[i]. を何度も並べていたところ、アドレス計算が毎回毎回かけ算になっていたw with にしたらそれは解消したようだ。 そのへんに現状の Free Pascal コンパイラーの、おそらく LLVM 化すると解消するであろう弱さが見える。 なお、毎回同じ数のかけ算をしていても 12 秒を切っていたんだから CPU のことはよくわからないw

調べていたときに fpwrite というのも見つけていた。 これはより直接的に write システムコールにつながる、Unix 用のユニットにあるらしい。

%2 きんようび

雨のち曇り。 出社した。 朝はもうちょっと雨がやむ瞬間があるかと思ったんだけどな、ずっとしょぼしょぼ降っていた。 一番ひどかったのは正午頃だけど。

テレビでやってた映画『ミラベルと魔法だらけの家』(原題: Encanto)。 2021 年のアメリカ映画。 ミュージカル。 不思議な魔法の家族。 Frozen とか Coco とかみたいな、ディズニーアニメーションらしい展開。

2023/11/17 のコメントを読む・書く


18 (土)

%1 Pascal の話

16 進数表記に $ を使うのは Borland がはじめた拡張みたい。 へぇ。 Extended Pascal なる仕様もあって、そちらは 16# のように基数をそのままプリフィックスに使うそうだ。 へぇぇ。

C は、標準 C ライブラリがないと単純な入出力さえ満足にできない言語で、プログラムの先頭にはいくつもの #include が並ぶのが定番。 バイトスワップみたいに専用命令があれば活用したいから、各コンパイラーが大量に独自のビルトイン関数を投入していて、ヘッダーファイルで吸収されている。 Pascal とか、昔高校で習った FORTRAN とかは、標準で入出力はついている。 これはまぁ、どっちがいいか悪いかという話じゃなくて、そういうもの、ってことなんだけど、unit を書かなくてもけっこういろいろできるんだなー、とは思った。 (たぶん標準で読み込まれるものがあるって話っぽい。)

Free Pascal コンパイラーが生成する Linux のバイナリは、きのうまでにいくつか書いた FizzBuzz のプログラムみたいなのだと、statically linked で生成される。 つまり libc みたいなのが動的リンクされない。 Windows だとそうはいかないはずだし、Lazarus で作った GUI アプリケーションも動的リンクだったが、そういえば昔 Delphi が流行っていた頃にも、Delphi で作られたアプリケーションには別途ランタイムライブラリを入れる必要がない、みたいな話があったね。 最近だと Go という言語はやはり statically linked 方式になっているが、これも動的リンクになる場合があるようだ。

C と比べると、Pascal は型の種類が豊富な感じはする。 特に subrange で特定の範囲を指定できるのはおもしろくて、array に subrange が使えるのも良いし、Free Pascal だと bitpacked を使えば subrange を表すのに必要な最小ビット数を割り当てた record も作れる。 例えば month は 1 から 12、としておけば、bitpacked で 4 ビットで済む、みたいな。 (まぁ、数字を小さくはしてくれないみたいなので、101 から 112 としたら 7 ビットになってしまうけどね。)

C は特に大昔の C は struct のメンバーなんかまで名前空間が共有という状態だったし、もちろん今はそれは違うんだけど、enum のチェックがあまりされない (int の値として扱えてしまう) あたりはその名残かなという感じがある。 enum に対応する配列を作るというのもやるけど、最後に特定の名前を割り当てておいて、その名前を配列の要素数として指定して宣言する、みたいな感じで、間違えて他の enum の名前を書いちゃっても気づけないんだよね。 そのへんは Pascal のほうがいいところかなと感じている。

Pascal は変数宣言をプログラム (関数等) の前に済ませないといけない。 これはたぶん、長年の拡張がされてきた今でもそうなんじゃないかな。 C は { } ブロックの先頭であれば昔から好き勝手に宣言することができた。 これはまぁ、どっちがいいのかは判断が難しいところかな。 C でも関数の先頭に変数宣言をまとめているプログラムも多いだろうし。 Pascal のように強制されると、ローカル変数がてんこ盛りになる前に、ちゃんとルーチンをわけよう、みたいな気持ちになるところもあるかも知れないし。 時間に追われている時なら、動くルーチンをブロックごとコピーアンドペーストして書き換えて完成させる手が C なら使えるし。

C の場合 while はすべて for で書けるが、Pascal は whilefor を明確に使い分けている。 for のループの中に goto しちゃいけないし、for に指定した変数をループの中で書き換えてもいけない。 C の for はそういう制約がなくあまりにも自由度が高いので、すっきりしているけどこれ全然 for じゃないよね? みたいなコードも書けてしまう。 アルゴリズムの教科書に Pascal が使われるのはそのあたりかも知れない。 C の for の定番は for (i = a; i < b; i++) 方式の書き方だろうけど、これの <= バージョンは桁あふれ時の無限ループに注意が必要なのに対し、Pascal はその心配なく確実にこなしてくれる。

実は、きのう書いたプログラム、with を使う前のバージョンを書いてコンパイルした時、一発でコンパイルが通り、一発で動作してしまった。 いくら前に C++ 版などを書いていたといっても、なかなか珍しい経験だ。 何か Pascal にそういう特性でもあるんだろうか? と思ったが、考えすぎだな。

あまりやる機会がなかったけど、C でも、関数内での型の定義は可能なようだ。 例えば struct hoge を関数内で定義すれば、それは関数内に閉じられたものになるらしい。 関数内というか、ブロック内か。 そういう場合たいていは名前無し構造体にしちゃうからね、あんまり考えたことがなかった。 typedef もそうなので、Pascal で type t0 = packed array[1..5] of char; みたいなのを procedure ローカルとして書いたのを、C でもそのまま typedef char t0[5]; みたいに関数内で定義できるというわけだ。

%2 どようび

晴れ時々曇り。 寒い日。

バイクに乗った。 エンプティになったので給油した。 最後に給油したのがつくばだった。 あんまり燃費伸びていないな、と思ったらオドメーターの記憶ミスだった。 ま、オドメーター記録だと、たまにミスっても数回分ぐらいを平均するとそれっぽい数字になるけど。

ホンダの NX400 の情報は不明だが NX500 の情報は出始めていて、YouTube にイギリスの情報が出ていたけど、エンジンは CB500X と基本同じみたいな説明になっていたな。 つまり 180 度クランクなのかも。 なので、デザインの変化、くちばしが短くなったのが好きか嫌いかみたいな、そういう話みたい。 自分は 400X のほうが好きかな。 ヘッドライトが減光側とそうじゃないので上下とか左右とかに分離しているのはなんか好きじゃないんだよね、左右は BMW とかヤマハとかにありがち。 あとはいろいろディジタル化が進んでいくみたいで、左手で何か操作できるものが増えるみたいだが、そのあたりの使い勝手はまだ熟成されていないんじゃないかという予感がするw NC750X の左手でモード切替するやつもいまいち使いやすくはなかったしなw

テレビアニメ『呪術廻戦』。 41 話。 オープニング無しで話が進む! しきがみ? と呪霊に乗っ取っられた主人公が渋谷の建物を次々に破壊するw ここに来て、主人公が取り込んでしまった呪霊のおそろしい強さをたくさん見せつけられている。 何もかもが異次元じゃないか...

テレビアニメ『葬送のフリーレン』。 11 話。 お礼をもらって、先に進む。 魔法の試験が必要w 冬。 厳しい冬。 スクワットエルフ。 この声は高橋涼介の声と同じ役者さん... 天地創造の女神様。 冬を越して、先に進む。

テレビアニメ『オーバーテイク!』。 7 話。 主人公のフォトグラファーはどこへ。

F1 ラスベガス GP 予選。 アメリカ合衆国ネバダ州のストリートコース、現地の夜開催なんだそうで、日本時間で 17 時に予選開始だったから、現地の真夜中の 12 am じゃんw 映像からあんまり観客の盛り上がりが感じられなかったのはそのへんの影響があるか。 あとめっちゃ寒そう。 あの厳ついメカニック達が長袖だよ。 決勝は日本時間 15 時開始だそうで、現地時間は 10 pm だから少しマシである。 ...そう、なんと現地時間で土曜日が決勝になっているという、超珍しいグランプリである。 角田はトラフィックに引っ掛かってタイヤを温め損ねたとのことで予選最下位。 リカルドは Q2 にはギリギリいったものの 15 番手だったので、マクラーレンが 2 台 Q1 脱落の運に恵まれたところもあるだろう。 ハミルトンとペレスが Q2 で脱落。 最後はフェラーリが 1-2 を決め、フェルスタッペンが 3 番手に続く。 せっかく速いフェラーリの 1 台は、free practice 中にマンホールのふたが取れたのに当たって何もかもが壊れてしまい、パワーユニット交換になって 10 グリッド降格という何とも残念な話になっている。 アメリカ人ドライバーのサージェントが速さを見せて Q3 に進出していた。 出身地のフロリダ州からすればだいぶ離れている場所だけど、それでも母国で何度もレースがあるのはうれしいだろうな。 一時期は成績が上向かずもうだめかと思ったサージェントもこのところ調子が良くなっている感じなので来年も見られるかも知れない。

2023/11/18 のコメントを読む・書く


19 (日)

%1 レンタルカート

スポーツカート耐久レース。 御殿場。 5 時間耐久レース。 ハイスピードコース。 4 人チームから参加。 ドライコンディション。 9 位。

寒くなってきたので路面温度が低くタイヤのグリップが弱い。 それで全体的に難しいところがあり慣れるのに時間が掛かった。 特に 2 回目のスティントだったかな、左に曲がる時にアンダーステアっぽいということを理解するのに時間がかかり、8 コーナーで何度もクリッピングポイントを外し続けた後でやっと気づいて、左コーナーを丁寧に走らせるようにしたら急にタイムがよくなった。 レース後早くも筋肉痛。

%2 行き帰り

車で。 寒かったからね。 東名道は工事で交通規制があるとのことで、中央道・東富士五湖道路を使った。

帰りはお腹が空いていたので、めしを食ってから、旧 138 号線 (今は別の番号が振られている) を通ってみた。 旧 APG の前の道。 懐かしい景色に、高架道の橋脚が生えている。 こんな風になっていたんだ。 案内は不親切で、基本的に新御殿場こっちという案内しかないw そんでもって山中湖経由で道志みちに出て、道志みちをスーッと走っていたらトイレに行きたくなって、あのコンビニに駆け込んだ。 そっからは国道 16 号に出て北野街道に出て、うっかり日野に登ってしまったが、それで国道 20 号に出て帰った。

%3 にちようび

晴れ。 寒い日。

F1 ラスベガス GP 決勝。 スタートでフェルスタッペンの俺様コース外オーバーテイクwww 今回はペナルティ出た。 ま、ペナルティ消化しても勝ったんだけどね、この人は。 角田はスタートはよかったがペースがなく、最後はトラブルでリタイアした。 ピアストリがまた新人らしからぬレースを見せてくれた。 下位スタートだったのに 10 位入賞とファステストラップポイント。 ポールポジションスタートのルクレールが、3 位まで落ちていたが、最終ラップで 2 位を取り返した。 ルクレールは熱いレースをしていたね。

2023/11/19 のコメントを読む・書く


20 (月)

%1 休暇

カートレース翌日筋肉痛計画休暇。 晴れ。 寒い日。 昼は暖かかった。

4 年ぶりに眼科へ。 普段用のやや近く用のめがねがかなりくたびれているので、新調しようってことで検査もかねて。 特に問題はなく、度数は前とほぼ同じだが、左目だけ一段弱まって (度数が小さい方向にズレて) いるのと、左目だけ乱視の度数がちょっと強まっているらしい。 普段用の度数は遠く用の +0.5 みたい。 つまり遠く用の +2.75D と普段用の +3.25D だ。 今一番近く用で使っている、つくばの店で作っためがねは、右目だけがその普段用の +0.25 とのこと。 んで、今のめがねでも大きな問題はないけど、せっかく作るならもう少し近く用にしたら、ということで、度数的にはその一番近く用のさらに +0.25 になった。 つまり左が +3.50D で右が +3.75D。 それと乱視の補正が少し変わっている、と。

何となくだけど左目のほうが見づらいことがあるというのが、その乱視と遠視の度数違いによるものなのかな。 見えないかと思ったら見えるという、ちょっと不思議な感触があるのがまぁ、確かに度数がちょっと強すぎたということなら、説明はつくのかなと。

そっからラーメン食べにいって、それから眼鏡屋さんにいって注文してきた。 最近のはやりは丸い形らしい。 ただあんまり丸いのは視界の広さ的に気になりそうだ。 今時パソコンのディスプレイもワイドだしなw 丸は丸でも微妙にいろんな形があって、それでも違いがありそう。 あと金属・チタンフレームのほうが耐久性に優れる印象はあるらしい。 そんなわけで適当に選んだ。

テレビアニメ『16bit センセーション ANOTHER LAYER』。 このアニメ、オープニングなんかの字幕に PC-98 の 16 ドットフォントを堂々と使っているけど、PC-98 があった当時のテレビはアナログ 480i だったから、こんなサイズで 16 ドットフォントを放送できるのはディジタル放送で 1080i になったおかげだな!w 7 話。 未来の技術をアメリカ由来ってことにして持ち込み、PC-9821Ra を重ねて「スーパーオクタコア」w 冗談はともかく、フォトショップでレイヤー 200 枚って、確かに 1999 年のパソコンでは難しかったのかもなぁ、よほど解像度を落とすか色数を落とすかしないとね。 ジョルトコーラ。 熱い主人公は過去でゲームを作る! 「LHA ファイル」w そしてまたしてもタイムリープする者が...

テレビアニメ『MF ゴースト』。 7 話。 Seventeen。 レースの続き。 各集団でそれぞれの展開。 主人公はタイヤを使い切るみたいな話。 タイヤがたれてしまった GT-R, やや映像表現は怪しいw 86 もちょっとドリフトさせすぎじゃないかな。 終盤戦。

テレビアニメ『るろうに剣心 ―明治剣客浪漫譚―』2023 年版。 20 話。 振り返りと、剣心の過去。 横浜、外国の医者。 人力車、だんきち。

%2

きのうもおとといもだったけど、冷えた状態でエンジン始動直後にエンジン回転数が 1 秒ぐらいの間だけ低く、その後ぶわーっと回るようになるのは、バッテリーの劣化で起こりうるのだろうかという疑問。 何しろバッテリーは 10 年もの、始動直後のシガーソケット電圧が一瞬 11.1V って出る、みたいな劣化っぷりなので、何か関係がありそうに思えてしまう。 発電した電力の多くがバッテリーに吸い込まれるはずなので負荷が高くなって回転数があがりきらない? キーを START 位置にしているとシガーソケットとラジオの電源供給が切れるので、キーを ON 位置に戻した時に電力消費が増えるというのもだめ押しか?

キーを START 位置にしたまま少し待つ手もある。 クラッチペダルを踏んでいる間しかスターターモーターは回らないので、ギヤをニュートラルにしておいて、エンジンが始動したところでクラッチペダルを離せばいい。 きのうの夜それをやってみたところ、なぜか CD プレイヤーの表示が出てきて (きのうはラジオじゃなくて CD を突っ込んでいた) 首をかしげていたw ラジオの電源は START 位置だと切れるんだったはず。 確か走行中にクラッチつないだまま START にしても (スターターモーターが回らなくても) ラジオは切れたような...

%3 バイク

400X の冷えている時のアイドリングは 2000 rpm を超えるケースがある。 正確な数字は確認していないが、寒い日はかなりぶんまわる。 スロットルは電子制御じゃないタイプだが、アイドリングは電子制御だろうな、この挙動は。

GSR250S はそうじゃなくて、インジェクションなのにアイドリング調整ねじすらついていた (マニュアルで触るなとなっていた)。 なので寒い日でもアイドリング回転数はほんのわずかに変わるかなという程度。 後継の V ストローム 250 がどうだか知らないんだけど、検索すると IACV というキーワードが出てきたので、どうやらアイドリングの電子制御は導入されたようだ。 排気ガス規制の関係なんだろうな。 GSR250 が登場した 2012 年はまだ、ドラッグスター 250 というキャブレター車すら新車で買えた頃。 アイドリングの電子制御は、冷えているときに回転数をあげてマフラー温度を早く適正にもっていくとか、温まった後に回転数を低くおさえて燃料消費を減らすとか、いろんな狙いがありそう。 知らんけど。

2023/11/20 のコメントを読む・書く


21 (火)

%1 かようび

晴れ。 朝は寒かったんだけど、昼は少し暖かかったか。

テレビドラマ『トクメイ! 警視庁特別会計係』。 6 話。 100 円コーヒーに釣られた主人公と、その主人公に引き込まれた同僚が強盗の人質に。 相変わらずの悪運強すぎ主人公w "SIT"。 どうでもいいけど電話線抜いたら話中にはならないんだよな。 一円曰く、夢見るだけなら 0 円。 自分が変わらなきゃ、という話。

夜、何となく NHK-FM ミュージックラインを聞いていたら、J アラートでぶった切られてしまった。 聞き逃し配信も J アラートになっていて、おいおい...

%2 GNU Emacs

Emacs 28.2 になってからというもの、端末で動かした GNU Emacs の色がどうにも見づらい問題があり、どうにかならんのかと試行錯誤していたが、以下の customize がきくことがわかった:

'(frame-background-mode 'light)

ようは GNU Emacs が端末の背景色を勘違いしていたということみたいだが、そもそも automatic ったって端末の背景色を検出する方法なんかなくない??? っていう、あまり納得がいかない感じの...

%3 整数の割り算表記

去年いろいろ MS-DOS のビルドをして遊んでいたが、その時自分が書いたコードを見ていたら、こんなのが:

MOV	AX,'[' OR ('B' SHL 8)
STOSW
MOV	AX,'P' OR ('+' SHL 8)
STOSW

この式は... もしかして Pascal 由来の表記か? Pascal を知らないで来たから、単に MASM がこういう文法なんだ、と認識していたけど、そっかー。 と思って例の MS-DOS のソースコードについてくる MASM 1.10 で遊んでみると、DIV は使えなかった。 整数の割り算は MASM は / で表すらしい。 MOD はそのまま MOD でいける。

整数の割り算は Pascal は DIV である。 BASIC は \ だった。 バックスラッシュだが、日本では円記号として認識されていたと思う。 Pascal の DIV は小数は受け付けないが、BASIC の \ は受け付ける。 Python は // である。 Python の hex 関数は整数しか受け付けないので、/ で割ると例え割り切れていてもエラーになる。 // は珍しいパターンだが、\ が他の用途に使われる言語ではそれも手なのかも知れない。 Python の // は小数を指定すると / と同じ結果になるみたい。 C は整数も小数も割り算は / で、型に依存して結果の型も決まる言語である。 AWK や Perl や JavaScript には整数の割り算などなさそう。 あっ、Perl には use integer というのがある。

2023/11/21 のコメントを読む・書く


22 (水)

%1 すいようび

晴れ。 暖かくなった。

電気ケトルを新しくした。 今まで T-fal のアプレシア スカイブルー 0.8L BF802322A というのを使っていた。 2011 年に買って、4480 円だった。 これはまぁ安い電気ケトルの定番みたいなやつで、今もこれと見た目そっくりな後継モデルみたいなのが売られている。 で、新しいのは Russell Hobbs というイングランドのメーカーの 7408JP-88。 株主優待 10000 pt。 Pros cons はどちらもいろいろあるのでメモ:

%2 GNU Emacs

なーんか色まわりの調子がいまいちになってしまった GNU Emacs 28.2 だが、どうも例の frame-background-modelight にするのに加えて、端末を 256color でなく 16color にしたほうが良さそうな感じがしてきた。 X での表示に近い色を選ぶっていう仕掛けが悪さをしてしまっている疑惑だ。 で、TERM 環境変数を変えるのはいまいちだなと思って、init.el の中で何とかできないか、を WWW 検索しても情報がない。 困っている人がいないわけではなさそうなんだけどね。

それで tty-color-mode-alist って変数を見つけてそこから Emacs Lisp をたどっていったら、display-color-cells という関数が見つかった。 これで端末 (X 含む) の色数を得て挙動をかえているらしい。 その中では x-display-color-cells という X 用の関数と tty-display-color-cells という文字端末用の関数を使っていて、それらはいずれも C の実装にあるらしい。 そういうことならと、その display-color-cells を init.el で上書きして、文字端末用の関数が 16 以上を返したら強制的に 16 にしてしまうという、そういう強引な手法により解決した。

まぁ、それは解決したけれども、そもそもの発端は customize-faceregion の face を出したときに、sample に出ている色とその下の Background に出ている色が違うという謎事象なんだよね。 これが、24 ビットカラーの端末でも起きていて、なんでそんなことになっているのかさっぱりわからん。 見えるからいいやと思っていたけど、なぜか自宅サーバー PC の GNU screen (24 ビットカラーに対応していないので 256 色で) ではそれが背景色真っ赤になって文字が見づらくなるので (その理由もわからなかった、GNU screen も関係しているんだろうけど、別の環境ではそうなっていないのもある)、結局こうなった。

2023/11/22 のコメントを読む・書く


23 (木)

%1 IF THEN IF THEN ELSE

なんかふと気になってきて試した。

a := 0;
if (false) then if (true) then a := 1 else a := 2;
writeln (a);
a := 0;
if (true) then if (false) then a := 1 else a := 2;
writeln (a);

Pascal のこれ、出力は 0 2 の順。

int a;
a = 0;
if (0) if (1) a = 1; else a = 2;
printf ("%d\n", a);
a = 0;
if (1) if (0) a = 1; else a = 2;
printf ("%d\n", a);

C のこれ、出力は 0 2 の順。 JavaScript や AWK や BASIC でも同様のことを試したが、出力は 0 2 の順だった。 つまり if (0) { if (1) a = 1; else a = 2; } という形で扱われているのであって、if (0) { if (1) a = 1; } else a = 2; としたいなら { } なり begin end なりを使わないといけないんだな。 まぁ、そう、そうなので、いずれの言語でも IF THEN IF THEN ELSE ELSE の形も書ける。 現実にはそういう紛らわしいのは必ず { } なり begin end なりを使うことに自分はしている。

sh の iffi が必須なのでそういう紛らわしさはない。 Perl は 1 行 if は後ろに条件を書くスタイルで、その場合は else が書けないと思う。 Python は 1 行 if-else は後ろに条件を書くスタイルがあるらしい。 Perl 風だけど else が必須。 else なしの場合は前に if を書いて、1 行で : の後ろに書くこともできる。 へぇ。 Python はよくわからん。 インデントによる記法が独特すぎる。 オフサイドルールというらしい。 初めて知った時はいいかもと思ったものの、今となっては編集時にミスを犯しやすい、良くない文法だと思っている。

%2 勤労感謝の日

晴れ。 暖かくなった。

朝は雨が降った跡があった。 降水量は気象庁アメダスにも記録されていないほどだったようだが、気温の高さと車や道路の濡れ方からして少し雨雲が来ていたんだろうと思う。 昼間は晴れていたから、近隣の大学の学園祭もにぎやかに開催されていたようで何よりだ。 西武鉄道の盲腸線の輸送パワーが存分に発揮される珍しい休日。 チラッと学園祭の様子を見てみたけど、ステージのバンド演奏でまさかの GLAY の懐かしいのが (たぶん前世紀・全盛期のが) 聞こえてきて、アラフォー感激だよ!w

夕方、イオンに行ってみたんだけど、小さなイオン (スタイル) には本屋さんがないのか。 へぇー。 んで帰りに駐輪場でスクーターのスタンドが立ったまま少し滑って前の柱に近づきすぎてしまい、これはスタンドを戻せなくなるのでいけないな、と後ろに引っ張ったら一瞬微妙に車体が傾いたらしく、右足の親指の上にスタンドが乗ってしまって、いってぇぇ!! 片側だけだが、車体は小型スクーターとはいえ 90 kg 近くあるんだからな。 すげぇ痛いので帰って見てみたら、爪の付け根のあたりから血が出たようだった。 爪は無事、付け根あたりの皮膚がゴリッと傷ついた感じに見える。 内側はわからんが、痛みは落ち着いてきたから、たぶん折れているような痛みではないと思う。 今のところは腫れてはいないが、腫れるようだと受診しないといけないな。 コンクリート舗装の駐輪場、なめらかすぎて意外と滑るので罠だぜ...

%3 EmacsClient

サーバーは (server-start) で開始するか emacs --daemon コマンドで開始する。 クライアントは emacsclient -c で開始すると、普通に新たなフレームが起動してくる。 C-x C-c でそのクライアントだけ終了できる。 しかし中で開いたファイルは自動的には閉じられない。

emacsclient-c をつけなければ、指定ファイルを既存のどこかのフレームで開くらしい。 その場合は編集が終わるまで emacsclient は待機し、C-x # で閉じると emacsclient が終了する。 普通に C-x C-k でもいいっぽい。

何か、こういうのが嬉しいユースケースがあるんだろうな、とは思う。 自分の使い方だと全然嬉しくない。 例えば、電子メールを読むために立ち上げっぱなしにしている GNU Emacs には、電子メール関連のバッファーがたくさんある。 全然関係ないファイルを編集している時に、電子メールのバッファーを見たくはない。 同様に、音楽プレイヤー EMMS 用に立ち上げている GNU Emacs には、音楽ファイルが入ったディレクトリを dired で開いているバッファーがたくさんある。 それも、EMMS を使うときに見るだけ。 そして、プログラミングの時にはバッファーをたくさん開いたまま残しがちである。 それらを時々 C-x C-c で一掃する。 GNU screen と組み合わせて、GNU Emacs をそういう風に一部立ち上げっぱなしにして、リモートから SSH でログインして使うという生活を大学生の頃から 20 年以上続けてしまっているので、他の使い方をしている人の話を見聞きすると、すげぇなまねできないな、としか思えない...

いやぁ、よく考えると 20 年ってすごいな、20 年前は Windows XP の時代だぞ? Linux 2.4 だぞ!? FreeBSD 5.x だぞ? GNU Emacs 21.x だぞ? RAM 容量が 256MiB とか 512MiB とかのパソコンがそこら中にあったんだぞ? 確かに GNU Emacs もあの頃と比べたらずいぶん変わったけど、毎日使っているからすっかり今のものに慣れてしまっている。 改めて今触るとおもしろそうだな。 懐かしの (20 年以上前の) Meadow 1.10 が出てきたので触ってみよう。 GNU Emacs 20.4.1 ベース!

Meadow 1.10

などなど。 そもそも Meadow や XEmacs が終焉したのもこの 20 年というところだ。 Emacs Lisp はあまり深く使い込んでいないので、どのぐらい変わったのかわからない。 Emacs Lisp で書かれたプログラムは、割と古いものでもほとんどそのままで動いている気はする。 そのあたりは C なんかのほうが 20 年でやや厳しくなったかな。 例えば、今は gcc に -fcommon オプションをつけないと、extern なしで外部参照する書き方はできなくなった。

2023/11/23 のコメントを読む・書く


24 (金)

%1 Free Pascal から C の関数を呼び出す

program a;
uses ctypes;
{$linklib c}
function puts (s : pchar) : ctypes.cint; cdecl; external;
begin
  puts ('Hello, world.');
end.

こんな感じでいけるらしい。 簡単だな。 ライブラリでなければ {$link filename.o} を使うらしいが、C で書いたコードとリンクする場合は、libc も必要になることが多いだろう。 libgcc 等も必要に応じて追加しておく必要がある。

これで思い出すのは 1990 年代後半の頃、Visual Basic でこういう外部参照を定義して Win32 API を呼び出して遊んだものだった:

Private Declare Function BeginPath Lib "gdi32" (ByVal hDC As Long) As Long

APILOAD.EXE

名前を忘れていたけど、API ビューアっていう、この定義を作り出すアプリケーションが Visual Basic に付属していて、これで作ってコピーアンドペーストして使うっていうね。 Free Pascal で外部の C のライブラリを呼ぶのと似たような話なんだけど、Visual Basic ではダイナミックリンクしか許されなかったので、自分で C で書いた関数を使う時も、ダイナミックリンクライブラリを作る必要があった。 今となっては、Win32 API は 64 ビットだとまた違ってくるからとても面倒なことになっていそう。 まぁ、昔の Visual Basic (自分が上のようなのを使っていたのは 5.0 と 6.0、1998 年から 2000 年頃) なので 64 ビット版はリリースされていなくて、後の .NET 版でそのあたりがどう変わったのかは知らないが、軽く調べた感じでは今も Declare ステートメントは残っていて、さらにそれとは別に Imports ステートメントというのがあるらしい。

%2 きんようび

晴れ。 暖かい日。

右足の指は今日も腫れてはいなさそう。 血がちょびっと出るので絆創膏を貼っている。 腫れていないし触っても強い痛みもないので、本当に皮膚の表面を強めにガリッとやった感じかな。 皮膚が治るまでは待つしかない。

きのう 20 年って書いたけど、40 年前は 1983 年、まだ MS-DOS の普及が始まったばかり、Disk BASIC も現役な頃だ。 って、生まれた年なので知らんけどw Disk BASIC はそこから 5 年以上後になっても使われているところがあったから、きっとそうだろう。 何かって言うと、さすがに 40 年前のソフトウェアは 20 年前にはもはや現役とは言えない過去のものだった。 しかし 20 年前のソフトウェアは今でもそれなりに生き残っている。 いやまぁ、Unix は 40 年前にもあっただろ、と言われると、それはそうだけどね。

F2 アブダビ予選。 岩佐は 5 番手。 ランキングトップのプルシェールが下位に沈み、ランキングで岩佐の次の 4 位にいるドゥーハンがトップタイムを出した。 F2 はリバースグリッドの sprint があるのでどうなるかわからんが、岩佐がランキングトップ 3 にとどまるにはそれなりにがんばらないといけないかもね。 プルシェールは苦しいレースになるだろうが、ポイント差は大きいので逆転まではされないんじゃないかなぁ。

テレビでやってた映画『ノートルダムの鐘』(原題: The Hunchback of Notre Dame)。 別名 The Bells Of Notre Dame。 1996 年のアメリカ映画。 ミュージカル、アニメーション。 吹き替えもミュージカル俳優か? 昔ながらのセル画っぽいけどちょっと重ね合わせのぼかしっぷりがコンピューターグラフィックスっぽい感じもする、二次元のね。 パリが舞台の、醜い子とジプシーと、頭が悪そうな判事の物語。 ハッピーエンド!

2023/11/24 のコメントを読む・書く


25 (土)

%1 どようび

晴れ。 寒い日。

右足、妙な痛みが顔を出すので念のため整形外科へ。 予約をしていなかったので、久しぶりに朝イチで行ったら一人目だった。 打撲 (怪我があるかどうかとは別の話で、打ったら打撲だと言っていたw) か、骨折か? 痛みが強くないので完全な骨折ではないだろう。 しかしひびの可能性はある。 ってことで X 線写真撮影、きれいな骨が写った。 ひびも無し。 あとは絆創膏を剥がして確認、消毒。 爪の根元なので痛いでしょうね、っていう... 押さなければ痛くないけどね。 炎症を抑える飲み薬と、それ用の胃を守る薬と、化膿対策の塗り薬。

朝の学校近くの交通規制は、土曜日は割と除外されているところが多い。 しかし、職場近くのバス通りのバス専用レーンは、土曜日でも発動していた。 バス専用レーン (タクシーも OK) を走り続ける一般車も見えたけど、気づかないのか日本語がわからないのか... 平日に原付でバス専用レーンを走ることもあるが (原付は第一通行帯を走る義務が優先する)、その時の様子と比べて、土曜日の朝はさすがに交通量が少なく、非常にスムーズな流れだった。

足が痛むといけないから歩くのを控えよう、ってことで、きのう自転車を使ったが、今日見たら後ろタイヤの空気がすっかり抜けていた。 パンクか? と目視で見ても何かが刺さっている様子はない。 念のため古いパンク修理キットを出してきたが、これ 2006 年に 100 円ショップで買ったやつじゃねぇかなw もう接着剤が使えない気がするw まぁいいさ。 空気を入れて、中性洗剤を薄めたやつをスプレー、まずはバルブのところからだ。 すると、ぷくーっと膨らむ泡... さっそくビンゴ! バルブを外してみると虫ゴムに亀裂があった。 これだな。

このタイヤ、というかチューブは2020 年に交換したばかりで、バルブもその新品チューブに付属のものだから、2017 年に交換した前タイヤがまだ無事なのを考えるとちょっと早いな、という気はしないでもないが、学生の頃に一度虫ゴムが吹っ飛んだやつも、まだシティサイクルに乗っていた時で、2 年と数か月しか経っていないぐらいだったな。 自転車屋さんで虫ゴムを調達して、交換して、もう一度中性洗剤を薄めたスプレーで確認して、完了。 もしこれでも明日ぺったんこになっていたら、それは別の話だ。

学園祭に東京外国語大学管弦楽団のアンサンブル公演を聞きに行った。 何年ぶりかな、これ聞きに来たのは。 体育館の 2 階じゃなくて 1 階になっていた。 やっぱりライブは情報量が多いね、っていう、パンデミックを経てそういうことを常々感じてしまう。 必ずしも演奏者を見なくていい、観客を見てもいい。 小さな子供が興味津々演奏を見つめているのを見てもいいし、知らないおじさんおばさんが目を閉じて聞いているのを見てもいいし、体育館の設備を見てもいい。 体育館には暖房がなく、パイプいすと床はひんやりとしていて、マフラーを巻いている観客の姿もあった。 耳を澄ませば誰かの咳払いが聞こえたり、どこかで重たい荷物を運んでいるのか重低音が聞こえてきたりもする。 演奏者を見ればドヤ顔でバイオリンを弾いていたり、とても緊張した面持ちだったりする。 バイオリンを持つふたりが向き合って、(たぶん) 息を合わせて弾いていることもある。 コントラバスかな、大きな楽器を持った人が、自分が弾くところじゃない時に弓を宙に浮かせたまま動かしていることもある。 3 人の演奏のはずなのに 4 人目が出てきたな? と注目してみれば、ピアノ (Pf) の譜面をめくる係だ。 よく見るとパイプいすを割と演奏者も使っているのに、ピアノだけはまともないすだった。 みたいな。 こんなに情報量が多いと、人によって記憶に残る内容は違うだろう。 我々の今の IT 技術では、残念ながら遠隔ではこれらの情報の多くが消失してしまう。 別に音楽に限った話ではなく、プロ野球のテレビ中継なんかもそうなんだろうね。 それも、昔より解像度はあがったので映像の情報量は増えたものの、現地の観客の雰囲気は少ししか伝わらない代わりに、解説ががんばったり、コンピューターを活用して追加の情報を画面に出したりする。

F2 アブダビ sprint race。 ランキング 3 位の岩佐はペースが少し足りなかったな。 何とか 8 位で 1 ポイント。 ランキング 2 位のヴェスティが優勝。 ランキング 1 位のプルシェールは下位スタートだったが追い上げて 7 位。 ランキング 4 位のドゥーハンは 6 位。 4 位のハウガーは最終ラップで 4 位へ。 5 位のハジャー (アジャー?) がペースが悪いまま長いことおさえていたので、そこから DRS トレイン状態でプルシェールまで連なっていた。

F1 アブダビ GP 予選。 Q1 でアルファロメオの 2 台と、ウィリアムズ、ハース、フェラーリが 1 台ずつ脱落。 サージェントは速かったのにトラックリミットで 2 度とも抹消、ノータイム。 そしてタイミング的にはもう一回アタックする時間はあったと思うけど、アタックせずにピットインしてしまった。 Q2 でメルセデス、アルピーヌ、アストンマーチン、ウィリアムズ、アルファタウリが 1 台ずつ脱落。 Q3, いつも通りフェルスタッペンが余裕のポールポジション、角田は 6 番手。 ノリスがミスって派手にスライドさせてしまい 5 番手、驚異の新人ピアストリは冷静に 3 番手タイムを出した。 ま、決勝もフェルスタッペンが余裕の優勝を決めるだろうけれども、その下は各チームがごちゃごちゃしているからおもしろいレースになりそうだ。

%2 運がいい

今年は前厄であるが、足を怪我しても骨は無事だった。

今朝、整形外科に向かうのに、列車と自転車で向かうことも考えていたが、車で行ったところ、朝イチだったためか駐車場はあいていたし、自転車は虫ゴムがだめになっていたのだから結果としては all right だった。 なお、骨にひびがあった場合は帰りの運転ができないかも知れないとも考えたが、車なら普通に運転代行を頼めばいいな、という考えもあった。 スクーターや自転車で帰り乗れないと困りそう。

2023/11/25 のコメントを読む・書く


26 (日)

%1 にちようび

曇り時々小雨。 さむ〜い日。

学園祭に東京外国語大学管弦楽団のオーケストラ公演を聞きに行った。 きのうと席の向きが 90 度かわっている、のはいいとして、10 分前ぐらいに着いたのにすでに満席で、立ち見だった。 きのうのアンサンブル公演は普通に席があいていたので全然違うな。 スターウォーズやアラジンのテーマ曲と、交響曲第 8 番の 3・4 楽章。 おまけなし。

学園祭のステージは韓国系っぽい音楽にのせてダンスしているようだった。 後はヒップホップっぽいのが流れていた気がする。 うろうろして空いている店で少し食べて、うろうろして帰った。 寒かった。 屋内の企画に、漫研とか、モンゴル系の何かとか、そういうのがあったのを知った (知っただけで立ち寄っていない)。

F2 アブダビ feature race。 ばっちばちの熱いレース。 プルシェールがチャンピオンを確定、ヴェスティも最終ラップに接触があるなどがんばったがポイント届かず。 岩佐はきのうに続いてややペースが不足していたか、ランキング 4 位、かな? 審議対象があるような気がするけど特に情報はなかったから確定みたい。 岩佐はこれでスーパーライセンスのポイントを満たし、噂通りなら来年はスーパーフォーミュラか? 圧倒的な力の差を見せつけてほしいね。

F1 最終戦、アブダビ GP 決勝。 接触は何度かあったが、黄旗すら出たかどうかわからないぐらいクリーンなレース。 いやー生中継を見ているだけなのに楽しかった。 ドライバーズランキングの 3 位とコンストラクターズランキングの 2 位がこのレースで確定するというのに、それぞれが絶妙な順位にいるもんだから非常におもしろいことになっていた。 角田は 6 番手スタートで 8 位。 残念ながらコンストラクターズランキングでウィリアムズを逆転するには至らなかったが、ポイント圏内の車の中で唯一のワンストップ戦略。 アルファタウリの車じゃ他と同じ戦略では勝ち目がないのは目に見えているから、他と違う戦略というのは合理的ではある。 最初のスティントで一時レースをリードした周回もあった。 さすがに終盤に順位を落としたけど、最終ラップでハミルトンとやりあって、順位を落とさずに済んだのは見事だった。 Driver of the day も。

ABEMA の広告がなぜか音だけになった。 絵は本編がとまったまま。 なんでだw スキップ可能な番組宣伝も絵が出ない。 まぁいいかw

テレビアニメ『呪術廻戦』。 42 話。 主人公の中で過去の声がぐるぐる。 やられた呪術師も何とか生き残っているのか? 海、マレーシア。 主人公に最期の言葉を残す。 そして主人公も渋谷駅構内バトルに。 意外と強い主人公はメンタル攻撃にさらされる。

テレビアニメ『葬送のフリーレン』。 12 話。 本物になる勇者の話、過去のフリーレンの仲間。 剣の里。 山の主。 たった 80 年。 偽物の勇者。 18 歳の誕生日、プレゼント、服だけ溶かす薬。 ハンバーグ。

テレビアニメ『オーバーテイク!』。 8 話。 チーム移籍話。 話を聞くだけのはずがテストドライブ。 富士。 速いドライバー。 トップチームの監督、主人公の父とのつながり。 ドライブを平均台に例える。 ジェームズハントとニキラウダ。 もてぎでもテストドライブ。 ファーストドライバーのプレッシャー。

テレビアニメ『16bit センセーション ANOTHER LAYER』。 8 話。 1985 年。 店頭で PC-9801U を見て確認w 「エコーソフト」。 ラップスキャン。 MML。 パターンエディター。 PSG とビープ。 88 用のゲーム。 アシスタントに点数を。 昔の世界で買い物。 ゲームのエネルギーを測る装置。 想像力がない場所から来た。 想像力とは? 融合。 屋上。 人間の本質。 何の話?w タイムリープ先で起こる出来事は、美少女命の主人公と、PC-98 でプログラミングできれば何でもいい人との意識の差か?

2023/11/26 のコメントを読む・書く


27 (月)

%1 救急

朝。 二度寝だか三度寝だかの時、どこからかメロディが聞こえてきた。 あー誰か近所の人目覚まし止め忘れているんじゃないの? なんて寝ぼけて思っていた。 鳴り止んで、再び聞こえてきて、ほーら早く起きないとスヌーズ機能が... というあたりで、あれ? 今の家に引っ越してからそんな機会一度もないし、これ ウチの電話じゃね? って気づいて、起きて電話をとったものの、切れた...

それで、起きて留守番電話を確認するも録音はない。 発信番号表示オプションを契約していないから、発信元を特定する術はない。 まぁいいかと朝ご飯を炊き始めたところで、念のためスマートフォンをチェックしたら何か着信がたくさん来ているじゃないのー! 兄者からだ。 留守番電話もあるようだったが、留守番電話を聞く操作が面倒くさいし、こんだけかけてきているならよほど急ぎの用事だろうからかければつながるだろ、ってなわけでかけたら、...救急隊員だった。 いやー驚くねぇ (^^; まぁとにかく、めまいと嘔吐の症状の申告があり救急搬送をするところで、まだ搬送先が決まっていないんです、みたいな話で、病院まで来られますかというので、ええいけますよ車もバイクもありますよ、なんて言いつつ、搬送先が決まったらまた連絡しますとのことでいったん電話を切った。

ご飯の蒸らし待ちの間に再び連絡が来て、何々病院に決まりました、どのぐらいかかりますかと。 Google Maps をパソコンで開き検索、朝の渋滞で 1 時間じゃ着かないらしい。 そもそもスタート地点を近所の地名にしていて正確じゃないこともあり、道に迷う可能性もありで、まぁ 1 時間半から 2 時間以内には着けますかねー、なんて、そんな感じで。

不安はあるが本人が救急医療にたどり着けているんだからまずは良い。 とりあえず朝飯を食って、車で出発。 最初から Google Maps のナビゲーションをセット。 7 時から 9 時は直進のみの交差点を右折なんて 8 時半に言うんじゃないよ Google 先生... そんでもって多摩川沿いでかなりの通勤ラッシュとおぼしき渋滞に巻き込まれ、車の機能で表示できる平均時速は途中 18 km/h を割っていた。 こないだ駒沢に何度か行ったけど、あの時使った 246 号をくぐってさらに向こうまで行くのだ。 かなり時間を要した。 でも Google Maps の予想到着時刻は割と正確だったので、別のルートを選んでもこれより早くはならなかっただろう。 あるいは二輪で行けば少し短縮できたかも知れないけどね。 渋滞がなければ 40 分ぐらいの距離らしくって、つまり東京 23 区の隣という首都圏でも通勤ラッシュというのはある。 ちなみに、こんなに通勤ラッシュに巻き込まれて、やっと鉄道・バス利用の場合と同じぐらいの時間、というぐらい、鉄道は時間が掛かるw

行き先はデカい総合病院で、駐車場は普通に有料のがあったが、車をとめて表から普通に入ったら、紹介状のある方〜、お会計の方〜、みたいになっていていったいどこに行ったらいいのかさっぱりわからない。 銀行みたいに案内係がいるわけではない。 たまたま歩いていたお医者さんに声を掛けたところ、救急の入口のほうに連れて行かれた。 そっちか。 そこで連絡を取っていただいて、少し待ってから、救急室だっけな、そこに案内され、兄者はまぁ見た目は普通に... 命に別状があるような状況ではないようだ。 そこで雑談しつつ待機し、そのうち研修医が来て、たぶんその人が救急の受け入れ時に診てくれたのだろう、そこから専門の耳鼻咽喉科の医師が来て、いくつかチェックをして。 眼球の様子の確認、しびれはないか、両腕を前にあげて維持してみる、耳の聞こえは正常か、などなど。 それから、一応入院ですねということで入院関係の手続きが進む。 自分は連帯保証人としてサインをしつつ、それ以外の書類もいろいろ手伝った。

あとは入院に必要なものを病院内のコンビニで調達するなどして、なんだかんだで 12 時過ぎまでかかってしまったが、あとはまぁ良さそうなので帰宅。 駐車料金は面会の場合は割引はきかないと書いてあったが、看護師は救急の受付で聞いてくださいというので、聞いてみたら割引きかせてくださった。 帰りは普通に 1 時間ぐらいで着いた気がする。

%2 げつようび

晴れ。 少し暖かくなった。

そんなわけで病院に家族として行ってきたわけだが、去年見たテレビドラマ『祈りのカルテ』を思い出してしまって、おもしろいなと思っていた。 あのテレビドラマは研修医が主人公だった。 医師免許をとってから、最初は研修医としていろんな科を経験し、何年かしたら自分の科を決める、みたいな、へぇー医師ってそんな感じなんだな、って思って見ていたわけ。 あの主人公が時間外の外来をやっていた回も確かあったはず。 で、今日病院に行ったら、あのドラマに出てきたようなでっかい病院で、研修医が来て、それから専門の耳鼻咽喉科の医師が来たわけで、あードラマでやってたやつじゃーん、みたいなね。 帰りのエレベーターには赤子を抱いた方も乗ってきたし、いろんな科があるのね。

めまいの症状は自分も何回か経験があるが、書いてある通り耳の閉塞感と関連しているのはメニエール病系統の何か、それも症状が軽かったので日常生活に困るようなものではなかった。 普通に自力でクリニックまで行けているんだしな。

新しいめがねを受け取った。 いろいろとパラメーターが変わったからか、だいぶ違和感がある。 違和感はともかく、基本的には前のよりくっきり見えるようになった感じがある。 度数はさらにプラスになっているので遠くはぼやけるんだけど、それにしてもくっきり見えるのは乱視の度数の違いが影響しているのだろうか。

そうそう、自分の乱視は、どうやら斜乱視というやつらしい。 乱視でメジャーなのは直乱視、高齢になると増えてくるのが倒乱視... 遠視も珍しがられるが斜乱視も珍しいのか。 まったくどうしようもないなw まぁ、めがねの場合はレンズの角度を合わせればいいんだから斜乱視だろうが何だろうが難しさは変わらない。 コンタクトレンズはソフトのものは選択肢が限られており、おまけに自分は遠視なのでよけいに選択肢が限られる。 ハードのものは、コンタクトレンズのきれいな形のレンズが角膜の代わりのように機能するみたいで、めがねやソフトコンタクトレンズとはまったく違うレベルの乱視の矯正ができるらしい。

きのうの F1、終盤にルクレールが無線でずっとごちゃごちゃやっていたんだけど、理由が解明されていた。 ルクレールはフェラーリのコンストラクターズポイントをランキング 2 位にするために、2 番手を走行しながらいろいろ考えたらしい。 3 番手にペレスがいて、ペレスには 5 秒タイムペナルティが出ていたのでそのままフィニッシュすれば 5 秒加算される状態。 4 番手にラッセルがいて、そのまま行くと 3 番手に繰り上がり、メルセデスがランキング 2 位になってしまう。 そこで、2 番手ルクレールはわざと 2 番手をペレスに譲った。 ペレスがかっ飛ばしてラッセルとの間に 5 秒以上をあけた上で、ルクレールがペレスの 5 秒以内にとどまれれば、ルクレール 2 番手のままラッセルが 4 番手になりメルセデスのポイントを減らせるぞ、とそういうわけだ。 結局、レース終盤過ぎてうまくいかなかったんだけど、F1 ドライバーのとんでもないレベルの駆け引きのひとつだった。 2016 年、ハミルトンがロズベルグにチャンピオンを奪われた年の最終戦では、ハミルトンがトップを走りながらわざとペースを落として、2 番手のロズベルグが 3 番手のベッテルに順位を奪われるのを狙った、というのがあった。 あれは、チームが何を言っても、もうコンストラクターズチャンピオンは決まっているんだからいいでしょ、ってなって確かにそうだし、確かにそれしかできることないけど、やるんだ... っていう、すごさがあった。

あとは角田の 1 回ストップ戦略が正解だったのかどうかの話。 これはもうたらればでしかないよな。 リカルドを見ても、アルファタウリにそこまでのペースがあるようには見えなかったし、何年か前みたいに、終盤にセーフティカーでも出れば、角田がめちゃくちゃ有利な展開になった可能性もあった。

2023/11/27 のコメントを読む・書く


28 (火)

%1 かようび

晴れ。 ちょっと暖かかったけど、寒かった。

未だに店内喫煙可能な飲食店に時々遭遇するけど、今日の昼に寄ってみた店は入口が常に網戸の状態にされていて、大変換気がよい店だった。 賢い。 テイクアウトもあるみたいなので、時々使ってみようかな。 しかも夜もテイクアウトもやっているらしい。 アルコールも出しているみたいだが、居酒屋ってわけでもないみたいだな。 ジャンルはダイニングバーになっている。

テレビアニメ『MF ゴースト』。 8 話。 レースの続き。 ダウンヒル! 維持でもドリフトを描くよな。 なぁんか時々微妙に車の挙動が変だよな。 あり地獄のようなフォーメーション。 車が横に瞬間移動www ロータスの伝統www 大げさな表現で笑わせてくるのがこの原作者の作品の共通項かw 霧の中。

テレビアニメ『るろうに剣心 ―明治剣客浪漫譚―』2023 年版。 21 話。 悪い医師が雇った悪いやつ。 天然痘。 仮面の医師。 悪いやつと剣心のバトル。 暗号みたいな名前の奥義。 あっさり決着。

テレビドラマ『トクメイ! 警視庁特別会計係』。 7 話。 「シン・予算削減案」w X の調査。 1 億円落ちていた事件。 「ハラン語」。 いつも運が悪いのにそんな都合良く無償の通訳が来るわけないだろw 案の定の詐欺事件と、1 億円の行方と、X。

2023/11/28 のコメントを読む・書く


29 (水)

%1 すいようび

晴れ。 出社した。 年末調整。

また原付で例のバス専用レーンを走ってみたんだけど、そんなに車いなかった。 時間帯によるのか何なのかわからないけど、この前とか今日とかみたいな感じだと、バス専用レーンの必要性も感じないぐらい。 この通りのバス専用レーンはどこが終わりなのかよくわからなくて、まぁ、原付だととにかく第一通行帯を走る義務があるので分かれ道のギリギリまでいていいんだけど。 あらためて Google Maps Street View で見ると、どうも道路上に丸に斜線引いて、バス専用って書いて、それでここまでの表示のつもりらしいな。 こんなのわかるかよ三鷹警察署め!

まぁそれはいいとして、やっぱりバス専用レーンのある通りまで出るより、その前で線路をくぐって線路脇の道を行くほうが早いようだ。 信号の数が全然違う。 線路をくぐるまでの道はいろいろで、時間規制で通れない道は避けないといけないから、今日は某大学の前の道を通ってみたら、最初は引っ掛かるが後は案外スムーズという感じの流れだった。

足の怪我のほうはだいぶ治ってきた感じがある。 見た目まだ爪の付け根が赤くしているのでアレだけど、赤いところが小さくなってきている気がする。 飲み薬も今朝で終わり、まぁ少し指の角度によってはまだ違和感があるかな、というところ。

2023/11/29 のコメントを読む・書く


30 (木)

%1 もくようび

晴れ。 寒い日。 暑いんだか寒いんだか季節がよくわからないうちに 12 月がやってくる。

もし、強いめまいで移動が困難になったら、救急車を呼ぶ以外の方法は、ファストドクターみたいな、現代の往診サービスを使うことだろうか。 まぁでも、めまいは脳の出血や梗塞の可能性もあるから、結局救急車になるのかも知れないけど。

OSDN のサービス接続困難が話題だ。 OSDN って日本語版 SourceForge が名前を変えたやつで、本家 SourceForge がごたごたしていた時に OSDN に乗り換えよう的な話が一部で話題になっていた記憶。 自分は面倒だから本家 SourceForge をそのまま使い続けていた。 んで、OSDN にある有名プロジェクトは Tera Term Pro の後継、Tera Term で、これは web サイトを GitHub に移したらしい。 他に困ることなんかないだろと思ったら、JM Project という、日本語マニュアルのサイトが OSDN にあるんだそうで、なるほどな。 日本語マニュアル、manpages-ja とか manpages-ja-dev とか、パッケージでインストールできるので、web で見られないこと自体はそんなに問題はないけど、言われてみれば最近はあんまり日本語マニュアルを参照しなくなっている。 理由としては、意外と日本語版の内容が古くて英語版を見たほうが確実、っていうのがあるけど、それ以外に、いつの間にか英語版に慣れちゃってスムーズに読めてしまうようになった、というのもあるのかも知れない。

なんかさ、英語って中学 1 年から大学 1 年までの 7 年間は学校の授業を受けていたし、高校までは NHK ラジオの英会話入門などの番組もよく聞いていたし、英語は好きなので、大学入学以降ブロードバンドで身近になったインターネットの世界も、割と英語の情報も探すみたいな感じで来てはいたけど。 それでもちょっと壁があって、聞いて理解しても、ほとんど (確実なことしか) 話さない、みたいな、そんな感じで接していたような気がする。 大学には留学生もいて、研究室配属になって英語を使う機会は増え、多少は話すようになったけど、あれから 15 年。 英語力はあまり改善はせず、ほとんど維持みたいなものだった気がするのに、英語のマニュアルや仕様書を読んだり、外国人の同僚と英語で (文字で) やりとりをしたり、ソーシャルメディアの英語の投稿を読んだりしてきたことで、実際にはあの時の壁はもうなくなっているのかもね。

この前虫ゴムを交換した自転車、一応 5 日経っても空気は残っていたが、手でおさえた感じはちょっと空気が抜けているような気もする、という、やや微妙な...

新しいめがね、毎日かけていたら慣れてきた気がする。 まだ遠くをぱっと見ると違和感あるけど、近くはだいぶ楽に見える感じがする。 度数的には遠く用 +1.0 になっているんだから (手持ちの遠く用と比べると左目は +0.75)、計算上は 1 メートルまでしかピントが合わないはず、なんだけど、そうすると自分の身長は 1 メートルより遙かに高いわけだから、自分の足下にもピントが合わないってことになる。 まぁ、合っていないのかも知れないけど、そこは特に気にならないのがおもしろい。

2023/11/30 のコメントを読む・書く


prev, this, next

/var/log/hdk.log コメント一覧

トップ / 日記索引 / 日記 (2023 年 11 月)

Hideki EIRAKU