ときどきの雑記帖 RE* (新南口)
ライト、ついてますか
笑い男事件まであと一年
tnozakiさんの件もあってか 書くのを忘れてしまったけど 2月と言えば「笑い男」、
#攻殻機動隊SAC
— 兎神様's Asylum (@usagamisama_sub) February 3, 2023
いいか、笑い男事件は1年後だぞ。
トレンドに「笑い男」を叩き込み、
TLを笑い男マークで埋め尽くそう! pic.twitter.com/sYlmMSlPaF
笑い男事件発生まであと1年らしい
— あじぽん@日常 (@ryuuseki_you) January 31, 2023
2024年2月1日 pic.twitter.com/zPGpuF4K1n
笑い男事件 2月 - Twitter検索 / Twitter
ところでtnozakiさんとこはこのままshutdownしちゃうんですかねえ。 github.ioの方も404になっちゃってるし。
エレベーター
メンテナンス
武蔵小杉駅エレベーター交換
六本木駅のエレベーター長期停止に頭抱える交通局、海外製の落とし穴 | 日経クロステック(xTECH)
メモ
江ノ電、クレカのタッチ決済導入 首都圏鉄道初 - Impress Watch
へー。
預言/予言
本題とは関係ないところで。
Creusotでは預言(prophet)という手法を用い、Safe Rustを対象とすることで、分離論理を必要とせずに検証ができます。
「預言」だと「宗教的」というかそっちの意味合いが強いと思うのだけど 狙ってこの言葉を使ったのかなあ🤔
- Extensible Functional-Correctness Verification of Rust Programs by the Technique of Prophe (預言の技術による Rust プログラムの拡張可能な機能正当性検証)
- 「予言」と「預言」 - 違いがわかる事典
- 似て非なる「預言」と「予言」 | Bible Learning
- 「予言」と「預言」の違いとは?
- Prophet Definition & Meaning | Dictionary.com
新刊近刊
というのをみつけ、へーと思い調べてみると (紹介文はamazonのページにもあるけど)
書籍詳細 - イラストで学ぶ 世界を変えたコンピュータの歴史 - 創元社
数字と原始的な計算機「アバカス」が発明された古代から、計算することが職業となった産業革命期、 軍事需要や宇宙開発を背景に初期のコンピュータやプログラムが次々と発明された第二次世界大戦期~60年代、 そしてコンピュータがどんどん小型化するとともにインターネットが世界を網目のようにつなぎ、 コンピュータの性能や利用範囲が加速度的に向上していった1970年代から現代までを8つの時代に分け、 それぞれの時代におけるイノベーションを、「歴史年表」「歴史の物語」「重要な発明」「影響力のあった人々」4つのトピックから紹介します。 各章では、まず年表や物語で歴史の大きな流れをつかむとともに、 その時代を象徴する発明品やエンジニアを取り上げることで、コンピュータの進化のようすと、 エンジニアやクリエイターの伝記を詳しく知ることができます。
もう一冊(こっちはもう発売される)
コンピュータは、どのような人々の情熱によって開発され、社会に変革をもたらしたのか? IT社会の実現に情熱を燃やした人々の姿を描いた連作短編小説集。 アラン・チューリング、フォン・ノイマン、スティーブ・ジョブズら個性あふれる人々の物語。
書影を見ると、手前の大きく描かれた人物がジョブズで、 右上がチューリング、その左隣がノイマン。だよね。 ノイマンの左の人物はホッパー? 右下は…アラン・ケイか?
出版社のページを見てもわからんな。 せめて目次を載せてくれていれば…
- 科学の先駆者たち『① 宇宙を目指した人々』 | 学研出版サイト
- 科学の先駆者たち『② 病気と闘った人々』 | 学研出版サイト
- 科学の先駆者たち『③ 星の謎に挑んだ人々』 | 学研出版サイト
- 科学の先駆者たち『④ 生命の不思議に魅せられた人々』 | 学研出版サイト
- 科学の先駆者たち『⑤ コンピュータ社会を創った人々』 | 学研出版サイト
メモ
Go 言語製実行ファイル解析の紹介 ~関数情報~ - FFRIエンジニアブログ
また、以前の記事でも紹介した通り、Go 言語製の実行ファイルは C/C++ 等で作成された実行ファイルとは大きく異なるバイナリ構造をしています。
- Go 言語製実行ファイル解析の紹介 - FFRIエンジニアブログ
- The Rust Implementation Of GNU Coreutils Is Becoming Remarkably Robust - Phoronix
- My review of the C standard library in practice | Hacker News
- My review of the C standard library in practice
Multi-byte encodings and wide characters
mblen, mbtowc, mbtowc, wctomb, mbstowcs, and wcstombs are connected to the locale system and don’t necessarily operate on any particular encodings like UTF-8, which makes them unreliable. This is the case for all the other wide character functionality, which is quite a few functions. Fortunately I only ever need wide characters on one platform in particular, not in portable code.
FORTRAN Compiler on IBM 704
今回はCC000 CLASSIFY=WHICH NON-ARITHMETIC。 前回まででNON-ARITHMETIC、つまり特定のキーワードから始まる 文だということが確定したので、さらに キーワードに応じた処理に割り振るサブルーチン。
CC000
REM SECTION 1 / STATEA = 4F11556
REM 704 FORTRAN MASTER RECORD CARD / STATE A = F0190000. 4F11557
ORG 0 4F115571
PZE ORGA,,DMWR09 4F115572
PZE ENDA-1 4F115573
REM 4F11558
REM NAME FUNCTION 4F11559
REM PART 1 / ASSEMBLE AND CLASSIFY ALL STATEMENTS= 4F11560
REM CA000 ASSEMBLE STATEMENT. 4F11561
REM CD000 SCAN FOR HOLLERITH AND ILLEGAL CHS.4F11562
REM CB000 CLASSIFY=ARITHMETIC/NON-ARITHMETIC.4F11563
REM CC000 CLASSIFY=WHICH NON-ARITHMETIC. 4F11564
REM PART 2 / PROCESS CONTROL AND SPECIFICATION STATEMENTS. 4F11565
サブルーチン本体はそれほど大きくはない。
REM CC000/ CALLS=CC500,C0190X,DIAG,C0190,TET00. 4F11766
REM CC000 CLASSIFIES STATEMENT AS TO WHICH NON-ARITHMETIC. 4F11767
CC000 STZ 2G SET DICTIONARY WORD TAG, AND 4F11768
LXA L(0),3 CHARACTER COUNT AND ENTRY COUNT. 4F11769
CC001 TSX C0190X,4 * RESET CHCTR AND FWA TO BEGIN SCAN. 4F11770
TSX CC500,4 * EXAMINE NEXT DICTIONARY CHARACTER. 4F11771
CAS ENDMK TEST FOR CONSECUTIVE ENDMARKS. 4F11772
TRA ERR77P * MACHINE ERROR, GO TO DIAGNOSTIC. 4F11773
TSX DIAG,4 * ERROR = NOT FOUND IN DICTIONARY. 4F11774
TXI CC004,4 GO BEGIN COMARISION. 4F11775
CC002 TSX CC500,4 * EXAMINE NEXT DICTIONARY CHARACTER. 4F11776
CAS ENDMK TEST FOR END OF DIC ENTRY. 4F11777
TXI ERR77P,0 * MACHINE ERROR, GO TO DIAGNOSTIC. 4F11778
TXI CC007,0 IF END OF ENTRY, LOOK NO FURTHER. 4F11779
CC004 STO 1C OTHERWISE, SAVE CHARACTER 4F11780
STQ 1C+1 AND REMAINDER OF DICTIOANRY WORD. 4F11781
TSX C0190,4 * GO GET NEXT FORMULA CHARACTER, 4F11782
LDQ 1C+1 AND RESTORE DICTIONARY WORD. 4F11783
SUB 1C IF CHARCATERS ARE EQUAL, 4F11784
TZE CC002 THEN GO COMPARE NEXT CHARACTER. 4F11785
CC005 TSX CC500,4 * OTHERWISE, EXAMINE NEXT DIC CHAR. 4F11786
SUB ENDMK CONTINUE UNTIL AN ENDMARK IS 4F11787
TNZ CC005 FOUND, THEN 4F11788
TXI CC001,1,-1 COUNT ENTRY, AND BEGIN AGAIN. 4F11789
CC007 CLA T,1 IF THE CURRENT STATEMENT IS 4F11790
TPL T,1 OF THE NON-EXCUTABLE TYPE, 4F11791
SXD 1C+2,1 THEN 4F11792
TSX TET00,1 * GO ENTER EIFNO IN THE 4F11793
PZE 14 NONEXC TABLE. 4F11794
LXD 1C+2,1 AND THEN 4F11795
CC008 TRA T,1 * TAKE INDICATED TRANSFER. 4F11796
REM END OF PROGRAM CC000. 4F11797
注意しておくべきなのは ラベルCC001の位置で呼び出している サブルーチン C0190Xで、 辞書のエントリ一つと比較するたびに 現在処理中の行を最初から(ただし文番号は飛ばす) 読み直すということをしている。 その次の行で呼び出しているサブルーチンCC500は 辞書から一文字取ってくるもの。
REM CC500,4/ CALLER=CC000, 4F13156
REM CC500 BRINGS NEXT CHARACTER OF DICTIONARY INTO AC(30-35), 4F13159
CC500 PXD ,0 CLEAR THE AC 4F13160
TIX CC502,2,1 IF NO DICTIONARY CHARACTERS 4F13161
LXD 2G,2 REMAIN IN THE MO, THEN 4F13162
LDQ DIC,2 REFILL WITH NEXT DICTIONARY WORD, 4F13163
TXI CC501,2,-1 RESET THE 4F13164
CC501 SXD 2G,2 DICTIONARY WORD TAG, AND 4F13165
LXA L(6),2 SET THE CHARACTER COUNT = 6. 4F13166
CC502 LGL 6 SHIFT CHAR INTO AC(30-35), 4F13167
TRA 1,4 * AND RETURN TO CALLER. 4F13168
REM END OF PROGRAM CC500. 4F13169
細かな流れは次回以降に。
神保町の某倫館で情報処理学会の「情報処理技術遺産」に認定されている東京大学大型計算機センターの初号機に関する教科書がうってた。一冊300円。ありがとうございます。欲しい人がいるかは別として一級品の一次史料です。https://t.co/ZEczTRmOz8 pic.twitter.com/L85TQlJVkv
— K.Maeyama /電子計算機の日本史 (@mk95_hoc) December 24, 2022
この本、わたしも明倫館で見つけていた。 300円という値段からも想像がつくけど 店頭のワゴンの中に「埋もれて」いたのだよね。
FORTRAN 66よりも前の本なのでどうしようかと悩んだのだけど、 それでも今自分が追いかけているFORTRAN IIよりは それなりに時代を下ったものだし、 自分が持っていてもなあと買わずにいたのだった。
良い人の手に渡ったようでよかった。
A brief interview with Tcl creator John Ousterhout
前回書いたOusterhoutへのインタビュー記事、 新山さんも反応していた。
Tcl開発者 John Ousterhoutインタビュー。「Tclのユニークなところは最初から組み込み用に作っていたことと、『すべては文字列』という考え方だ。思うに、プログラミング言語の研究者が作った言語は普及しないな。CもJavaもGoも、すべて実際的なエンジニアが設計したものだ」https://t.co/43Vrm9uZHm
— 新山祐介 (Yusuke Shinyama) (@mootastic) February 12, 2023
Introducing Rubberduck
- rubberduck-ai/rubberduck-vscode: Use AI-powered code edits, explanations, code generation, error diagnosis, and chat in Visual Studio Code with the official OpenAI API.
- Rubberduck - ChatGPT for Visual Studio Code - Visual Studio Marketplace
エキスパートシステム…?エキスパートシステムじゃないか!久しぶりだな!元気にしてたか?
— ぼり (@bori_so1) February 15, 2023
え?今はChatGPTって言うのか?
ガハハ!とりあえず生活出来てるようで安心したぜ!
エキスパートシステム、懐かしい(遠い目)