ときどきの雑記帖 RE* (新南口)
Midnight Commander
信号
黄信号の意味が 「もうすぐ赤信号に変わるので速度を上げろ」 に変わったんじゃないか と思うような運転をよく見かける今日この頃。
ハンドドライヤー
例のアレ(謎)で復活してるけど、 あの動作音を近くで聴かされるの嫌なんだよねえ…
アンミラ
- 閉店した「アンナミラーズ高輪店」、バーチャルで復活 - ITmedia NEWS
- アンナミラーズ、横浜に期間限定ポップアップ店 日本上陸50年イベント:バーチャルショップも - ITmedia ビジネスオンライン
- アンナミラーズ - Wikipedia
自由が丘にあったときに一度だけ行った記憶が
新刊近刊
sed
sed でファイル出力する w コマンドは処理速度が遅いことが判明。
— IT勉強中 (@IT41408082) May 21, 2023
図は100万件のファイルから先頭20万件を抽出してファイル出力する処理のパフォーマンスを、wコマンドとリダイレクトで比較したもの。
リダイレクトした方が4〜5倍速い。やり方次第で10倍程度の差が出る。 pic.twitter.com/esMGPnNQIK
というツイートを見かけた。
たぶんwコマンドの方はいちいち ファイルのオープン→書き込み→クローズ をやっていて、それで遅いんじゃないかと 予想して(GNU sedの) ソースコードを見てみたが違っていたっぽい。
とすると、他にそうなりそうな原因はなんだろう?
Mel
Melのモデルになった人物判明。ということでいいんだろうか。
- 40th Anniversary to The Story of Mel: Who are you, Mel Kaye? : r/programming
- Mel’s Loop - A Comprehensive Guide to The Story of Mel
The Life and Work of Mel Kaye, A Real Programmer (1931-2018)
Mel’s Loopにある他の記事では The Story of Mel に書かれていたプログラムに関する考察(というか解説?) もある。 それらの記事が書かれた(そしてHNなどで取り上げられた) タイミングでも何か書こうと思っていたのだけど 書きそびれていたのだった。
Melの日
で、
05-21-2023
5月21日はThe Story of MelがUsenetに投稿された日ということで 「Melの日」なのだそうだ😄
Show HN: 40th Anniversary – Who are you, Mel Kaye? | Hacker News
For years, “Mel” was considered to be a fictional character. Though some details about him were found, still there was not much known about the life and works for Mel Kaye. Until today, when Mel’s identity is finally revealed.
After years of researching, digging into public archives, and searching for actual proofs, Mel’s Loop project publishes a new biographical article – “Mel Kaye – CV”, and unfolds the true identity of Mel Kaye (born Melvin Kornitsky, 1931), a child to a family of Jewish immigrants in Brooklyn from Poland and Russia, that grew up in Los Angeles, and became a hacking legend.
Happy Mel day, hackers!
Mel’s Loop - A Comprehensive Guide to The Story of Mel
Hello Mel, Did you once work for Librascope Inc. or Royal McBee? Thanks, Anthony
Yes, I did, many, many years ago I worked for both of them. I believe I worked for Royal McBee first. Mel Kaye
以下途中までで放置していたもの
Mel
Mel’s Loop - Home については 今年の5月にも言及していた
あ、Melの話だ。
この時、Mel’s Loopをまともに読んでなかったということですな😓
「インデックスレジスター」について
instruction set - Reconstruct the loop from “The Story of Mel” - Retrocomputing Stack Exchange
A programmer’s manual for the Royal Precision LGP-30 computer is available here. It does not seem to have an “index register”; it does have what it calls a “counter register” but that’s just a traditional “program counter”/“instruction pointer.” Which also means that the LGP-30 definitely did not have the “every instruction followed by a GO TO” feature that Ed Nather attributes to its successor the RPC-4000. The lack of an “index register” is also indicated by how the LGP-30 manual uses instruction modification to do load-from-consecutive-indices in a loop, in this section of the manual.
links
- Mel’s Loop - A Comprehensive Guide to The Story of Mel
- The Story of Mel, A Real Programmer, Annotated
- LGP-30 - A Drum Computer of Significance | Hacker News
- Mel Kaye’s hack was actually performed on an RPC-4000, so the story goes. When I… | Hacker News
- Macho programmers, drum memory and a forensic analysis of 1960s machine code
- instruction set - Reconstruct the loop from “The Story of Mel” - Retrocomputing Stack Exchange
MID$ statement
他の探し物をしていたら偶然こんな記事を見つけた。
マイクロソフトが権利を持っているベーシックのソースプログラムをもとに、PC-8801やPC-8001向けに機能を拡張したり 移植する作業のかなりの部分は、現実にはシアトルに派遣された土岐泰之など、渡辺の部隊のスタッフがになっていた。 当時マイクロソフトのベーシックを採用していた日本の他のメーカーでも、買う側が移植作業の中心になるという状況は 似たり寄ったりだった。ただし契約上はあくまで、日本のメーカーが買ったのはオブジェクトコードを自社のマシンに 搭載する権利のみであり、ソースコードをいじって独自の拡張を行ったり、契約に含まれていない他機種のベーシック 開発の参考にするといったことは禁じられていた。
ひょっとしてF-BASICやS1のBASICは それぞれ富士通や日立による変更が入っていて、 そのためにMID$ statement の動作がN-BASICなどと違っているのではないかと 考えていたのだけど、 この文章を読むとその可能性はなさそうですねえ。
FORTRAN Compiler on IBM 704
E+14とE+15のあたりを見てみた。
E+14
LXA L(3),4 TO PICK UP 3 ADDENDS. 4F11196
3D0002 CLA E+14,4 CONVERT ADDENS (BCD TO BINARY)= 4F11197
SLW G STRIP OFF 4F11198
LDQ G SIGN. 4F11199
TSX SR6DC1,1 * CONVERT ADDENDS IN E+11,12,13, 4F11200
LDQ E+14,4 PUT SIGN IN S-BIT OF MQ, AND 4F11201
TQP 3D0040 IF PLUS--SKIP NEXT, 4F11202
ORA 2E17 IF MINUS--OR SIGN INTO BIT 18, 4F11203
3D0040 STO E+14,4 AND STORE BACK INTO E+11,12,13, 4F11204
TIX 3D0002,4,1 WHEN DONE, 4F11205
E+15
LXA L(6),4 INITIALIZE 4F11040
SXD SBS2,4 FOR EACH SUBSCRIPT MEMBER. 4F11041
LXD SBS2,4 GET STORING TAG, 4F11086
SLW E+9,4 AND STORE MULTIPLIER. 4F11087
STZ E+15,4 SET ADDEND = 0. 4F11088
LXD SBS2,4 GET STORING TAG, AND 4F11119
STO E+15,4 STORE SIGN OF ADDEND. 4F11120
LXD SBS2,4 GET STORING TAG. 4F11151
SBC6 TXH SBC1,0 SWITCH-IF NO MULTIPLIER, AND 4F11152
SBC8 TXH SBC2,0 SWITCH-IF NO ADDEND, THEN 4F11153
CLA L(1) SET 4F11154
STO E+9,4 MULTIPLIER = 1. 4F11155
STZ E+15,4 SET ADDEND = 0. 4F11156
CLA FIRSTC TEST FOR 4F11157
SUB L(10) CONSTANT OR VARIABLE. 4F11158
TPL SBP4 IF CONSTANT, THEN 4F11159
STZ E+10,4 SET VARIABLE = 0. 4F11160
SBC9 CAL SYMBOL ADJUST 4F11161
ARS 42,2 CONSTANT 4F11162
ORS E+15,4 TO LOW ORDER POSITION. 4F11163
SBC7 TNX SBC3,4,2 UPDATE STORING TAG 4F11164
SXD SBS2,4 BY -2, AND SAVE. 4F11165
*
SBC4 TXL SS001,0 SWITCH-REPEAT FOR NEXT SUB-COMB. 4F11166 ***
*
TXI SA000,0 GO MAKE TABLE ENTRIES AND GET TAG. 4F11167
やっぱりインデックスレジスター4の中身に関係して
領域をはみ出した番地指定
(実効アドレスははみ出ない)になってたのね。
コメントを読んだ感じでは
E+11, E+12, E+13
には配列の添え字に関する情報が収まるぽい。
STO E+9,4
や
STZ E+10,4
で扱っているものがまだよくわからんけど。
これに関連して 配列の添え字がらみのサブルーチンを見ていたらこんな部分があった
SS000
REM SS000 SCANS SUBSCRIPT COMBINATIONS AND MAKES TABLE ENTRIES. 4F11035
SS000 SXD SXR2,2 SAVE C(XR2), 4F11036
REM SUBSTR/ CONTROL TRANSFERS FOR SUBSCRIPT SCAN= 4F11105
REM SUBTR/ CONTR0L TRANSFERS FOR SUBSCRIPT SCAN= 4F11105
TXI ISC,0 EMK (ILLEGAL IN LIST SUBSCRIPT). 4F11106 -10
ISC TSX DIAG,4 * ( (ILLEGAL IN LIST SUBSCRIPT). 4F11107 -9
TXI SBC,0 , 4F11108 -8
TXI SBR,0 ) 4F11109 -7
TXI ISC,0 = (ILLEGAL IN LIST SUBSCRIPT). 4F11110 -6
SBS2 TXI SBM,0,** - ,,SUBSCRIPT ELEMENT COUNTER. 4F11111 -5
TXI ISC,0 / (ILLEGAL IN LIST SUBSCRIPT). 4F11112 -4
SXR1 TXI ISC,0,** . (ILLEGAL IN LIST SUBSCRIPT). 4F11113 -3
SXR2 TXI SBP,0,** + 4F11114 -2
SXR4 TXI SBX,0,** * 4F11115 -1
初期のFORTRANでは配列の添え字に書ける式には かなりの制限があったというのは知っていたけど、 ここでILLEGAL IN LIST SUBSCRIPT になっている記号を見ると カッコを使った式や除算もダメなのね。
Hugoメモ
しばらくリリースがないなあと思っていたらリリースが
0.112.0で大き目の変更が入ったっぽいけど、 1日で二つも三つもリリースせんでも😓
まあ後ろ二つはregressionの修正ということだから 仕方ないのかもしれないけど。
商
和、差、積は字面でなんとなくわかるけど、商ってなに?と聞かれました。なに??
— ましゃ.net🍹 (@masha_net) May 21, 2023
たしかに。
— はけた@できるExcel2021 (@excelspeedup) May 21, 2023
「商」という表現は、どこから来たんでしょうね。 https://t.co/enH9UiOZY4
検索して上位に出てくる
- 漢字の「加減乗除」「和」「差」「積」。ここまでは、感覚的に分かる。しかし、なんで「商」なの?| OKWAVE
- 割り算の答えを「商」というのは、なぜですか? - 「商」の字は、「章」「冏」… - Yahoo!知恵袋
- 中学一年です。数学の時間、計算の結果(和、差、積、商)を習った時、商はなぜこの漢字なんだろう?とおもいました。しっている…|質問・相談が会員登録不要のQ&AサイトSooda!(ソーダ)
この辺は参考にしている情報は同じところのもののようだけど、 すでにサイトごとなくなっている模様。 webarchiveにあったのでそのリンクを貼っておく
ついでにうぃきぺを見ると
より一般な商
算術以外で、多くの数学分野で「商」の語がより大きな構造を解体して作られる構造の事を指すのに借用されている。 同値関係にある集合が与えられた際、「商集合」はその同値関係を要素として含むようにつくられる。 商群は群を類似の剰余類の個数に合わせてばらすことでつくられ、 商線型空間も同じようにベクトル空間を類似の線型部分空間に分割することで得られる。
という記述があり、
関連項目
には以下のものがあった。
- 積
- 商圏
- 商グラフ
- 整数除法
- 商加群
- 商対象
- 形式言語の商
- 商環
- 商集合
- 商空間
- 商型
- 商算と分割
結構あるなあ「商xx」
— しゃーくふかまち (@3veCcazjPT3wVbM) May 23, 2023
むかし、「悪いけど今から採用面接付き合って!」と言われて、資料見たら「経験3年、プログラミング言語 Solaris」って書いてあって、「はい、面接終了しました。不採用です」「いや、面接するよ」「やめましょうよ…」「その人もう会議室来ちゃってるんだからさ!」というやり取りをしたの思い出した https://t.co/hyQs01n0CJ
— Atsuo Ishimoto (@atsuoishimoto) May 23, 2023