ときどきの雑記帖 RE* (新南口)
眼下の敵
有隣堂ヨドバシAKIBA店
【閉店のお知らせ】平素より有隣堂ヨドバシAKIBA店をご利用いただき、誠にありがとうございます。有隣堂ヨドバシAKIBA店は、2023年1月9日(月・祝)をもちまして閉店させていただきます。
— 有隣堂ヨドバシAKIBA店 (@yurindo_akb) December 1, 2022
詳しくは下記よりご確認くださいませhttps://t.co/dPS3XegB78
フロア面積が縮小されてからはあまり足が向かなくなってたなあ。
黒いガンダム山手線
初めて目撃した(つーかまだ走っていたんだアレ)。
「黒い山手線」をNetflixがジャックし10月1日より運行開始 - About Netflix
1.運行期間
2022年10月1日(土)~12月31日(土)
ふむ。
X68000 Z
クラウドファンディングという形式になったんすな。 よくわからんけど。
- 「X68000 Z」が12月3日よりクラウドファンディング。4万9,500円から - PC Watch
- 伝説のパソコン「X68000」を現代風にアレンジして復活「X68000 Z LIMITED EDITION EARLY ACCESS KIT」クラウドファンディングにて12月3日19時より募集開始|株式会社瑞起のプレスリリース
すぐに目標は達成されたようでなにより。
PostScript
本物のPostScriptのソースコードが公開。
The Computer History Museum is excited to publicly release, for the first time, the source code for the breakthrough printing technology, PostScript. We thank Adobe, Inc. for their permission and support, and John Warnock for championing this release.
追記
Python and the Future of Programming
というPodcastがあるのを知ったはいいが、時間が長い(3時間ちょい)ので以下略
redditの Guido van Rossum: Python and the Future of Programming | Lex Fridman Podcast #341 : programming によれば
Honestly there was little of substance.
- Python has whitespace because brackets confuse people.
- Guido wishes Python was typed.
- Multi-core systems came as a complete surprise
- The GIL is an elegant hack if you pretend the last 20 years never happened.
- The core devs aren’t willing to maintain existing GIL-less implementations because it’s hard.
- Probably nobody really wants multi-threaded programs anyway
- Python is popular for data-science because “anything is better then c++”
- Guido didn’t think Python would be used for numerical arrays because they are an “outdated data-structure”, as compared to objects.
- Guido admits he should have stepped down earlier than he did and the community is competent to handle its own leadership.
なのだとか。
そう言えばこのPocast、ちょっと前にJohn Carmack が出演していた(そして新山さんが紹介していた)番組でなかったっけ? と思って調べたらその通りだった、
出演者の顔ぶれ見ても知らない人が多いな😓
んで、Guidoの回。
OUTLINE: Here’s the timestamps for the episode. On some podcast players you should be able to click the timestamp to jump to that time.
(00:00) – Introduction
(07:26) – CPython
(12:38) – Code readability
(17:00) – Indentation
(33:36) – Bugs
(45:04) – Programming fads
(1:00:15) – Speed of Python 3.11
(1:25:09) – Type hinting
(1:30:27) – mypy
(1:35:43) – TypeScript vs JavaScript
(1:51:42) – Best IDE for Python
(2:01:43) – Parallelism
(2:19:36) – Global Interpreter Lock (GIL)
(2:29:14) – Python 4.0
(2:41:31) – Machine learning
(2:51:13) – Benevolent Dictator for Life (BDFL)
(3:02:49) – Advice for beginners
(3:09:21) – GitHub Copilot
(3:12:47) – Future of Python
Python 4.0とかGitHub Copilotなんてのが気になりますねえ。
FORTRAN Compiler on IBM 704
SYSTEMS MANUAL FOR 704 FORTRAN AND 709 FORTRAN
他の探し物をしてて偶然見つけたのだけど、 もっと早くに知りたかったという情報が山盛りだった。
SYSTEMS MANUAL FOR 704 FORTRAN AND 709 FORTRAN
これでコードリーディングが一層はかどるというもの(たぶん)。
さて、前回ホレリス定数をscan(処理ではない)するサブルーチンを見たのだけど 改めてコンパイルの入り口からの流れを確認するとこう
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
ASSEMBLE STATEMENT
では1行分(継続行がある場合はそれも)ソースコードの読み込みを行って、
SCAN FOR HOLLERITH AND ILLEGAL CHS
で
ホレリス定数をチェック。
前回書いたように
CLASSIFY=ARITHMETIC/NON-ARITHMETIC
をスキップする経路もあるけど
CLASSIFY=ARITHMETIC/NON-ARITHMETIC
→
CLASSIFY=WHICH NON-ARITHMETIC.
と処理が進む。
ここまで出てきたサブルーチンの先頭を見るとこんな感じ。
REM CA000/ CALLS=CA100,SR6DC1,TET00,DIAG. 4F11641
REM CA000 ASSEMBLES STATEMENT IN THE F-REGION AND ASSIGNS AN IFN.4F11642
REM CD000/ CALLS=C0190X,C0190,DIAG. 4F11681
REM CD000 SCANS FOR HOLLERITH AND ILLEGAL CHARACTERS. 4F11682
REM CB000/ CALLS=C0190X,C0190,DIAG. 4F11733
REM CB000 CLASSIFIES STATEMENT AS ARITHMETIC OR NON-ARITHMETIC. 4F11734
REM CC000/ CALLS=CC500,C0190X,DIAG,C0190,TET00. 4F11766
REM CC000 CLASSIFIES STATEMENT AS TO WHICH NON-ARITHMETIC. 4F11767
呼び出しているサブルーチンを登場順に列挙するとこう。
- CA100
- SR6DC1
- TET00
- DIAG
- C0190X
- C0190
- CC500
さらにこれらの先頭を見ると
REM CA100 READS NEXT SOURCE PROGRAM CARD (1 TAPE RECORD). 4F13120
REM SR6DC1 CONVERTS UP TO 6 BCD DIGITS TO THEIR BINARY EQUIV. 4F11007
REM TET00 MAKES ENTRIES IN THE TAPE TABLES. WHEN A BUFFER IS 4F11394
REM FULL IT IS WRITTEN AS A RECORD ONTO TAPE 4. 4F11395
REM TET00 MAKES ENTRIES IN THE TAPE TABLES. WHEN A BUFFER IS 4F11393
REM FULL IT IS WRITTEN AS A RECORD ONTO TAPE 4. 4F11394
REM C0190X INITIALIZES C0190 TO OBTAIN 1ST WORD OF FORMULA IN F. 4F10533
REM C0190 OBTAINS IN AC TH NEXT NON-BLANK CHARACTER OF FORMULA. 4F10559
REM CC500 BRINGS NEXT CHARACTER OF DICTIONARY INTO AC(30-35). 4F13159
ただ、DIAGだけはよくわからなくて、 DIAGで探すと
REM DIAGNOSTIC CALLERS=CD000,CB000,CC000,CA100,C0200,C0300,C090, 4F11445
REM C1000,C1200,C3000,C3100,C3200,C3400,C0150,C0160,C0180,TEST..,4F11446
REM SR6DC1,DRTABS,RDRX,DIM.SR,SS000,ROYCNV,RDC,RSC,LPR,EQS,RPR, 4F11447
REM CMA,EMK,BEG(TYP),VRA(VRD). 4F11448
REM (CA000 ALSO CALLS THE DIAGNOSTIC AFTER ALL STATEMENTS HAVE 4F11449
REM BEEN PROCESSES. IF THERE HAVE BEEN NO PREVIOUS CALLS TO 4F11450
REM THE DIAGNOSTIC DURING SECTION ONE, THEN 1PRIME IS CALLED.) 4F11451
DIAG TXI 4,0 * GO GET THE DIAGNOSTIC. 4F11452
REM END OF PROGRAM DIAG. 4F11453
こうなっている。
生の数字(番地)を書かれてもねえ😓
Potato paladox
ポテト・パラドックス「100kgのポテトがあり、その99%は水分だとする。ある人がこれを水分98%になるまで乾燥させた。さて乾燥後のポテトの質量はいくらでしょう? 正解は50kg」
— 新山祐介 (Yusuke Shinyama) (@mootastic) November 29, 2022
人間にとって、数学的な考え方は直観的に難しい。https://t.co/ErnwozfzBx
しばらく考え込んでしまった🤔>Potato paladox
IBM meat slicer
その昔、IBMは計算器だけでなく、手回し式精肉器も作っていた。ウソのような話だがIBMの公式ページにも記載されている。https://t.co/9XlD2T7pE3
— 新山祐介 (Yusuke Shinyama) (@mootastic) November 30, 2022
どう言った経緯で扱っていた(作っていた)んだろう?
C言語を称える歌
AIにC言語を称える歌を作ってもらった pic.twitter.com/TWphuYhzkH
— あろえ (@aroerina2) December 2, 2022
42
誰かやらないかなと思ってたらやった方が😄
もうやっておきました。 https://t.co/VSzsL6JWf7
— 中野7/22ファミコントークライブ (@pisiinu) December 2, 2022