ときどきの雑記帖 RE* (新南口)
Intolerance
ガソリンスタンドの値段表示
電光掲示板じゃない(モダン(?)な液晶、有機ELなどでもない) 値段表示をしているガソリンスタンドのそばを通りかかった。 そこもやっぱり100円の桁を2にするのは無理がありそうだった。 まあどうにかできなくはないと思うけど(「物理」の強み)
(南武線の)ラガーさん
心密かに「(南武線の)ラガーさん」と呼んでいた人を3週間ばかり見かけていない。 ここ数年、朝の通勤時にいつも同じ電車に(同じ駅から同じ駅まで)乗っていた人なんだけど ちょっと行動が独特で(他人に迷惑をかける類のものではない)、 さらにほぼ毎日横縞のシャツを着ていたので印象に残っていたのね。
勤務先が変わったとかだろうか?
マジンガーZ@MX
次回ボスボロット登場。 結構後の方になって出てきたんだねえ。 ブロッケン伯爵よりあととは思わなかった(忘れていた)。
Battle of Sekigahara
日本人だけが知らない事実…世界三大古戦場に「関ヶ原」がランクインしている納得の理由 海外では「世界史的に稀有な出来事」とされている | PRESIDENT Online(プレジデントオンライン) に
関ヶ原は、ワーテルロー(ナポレオン戦争)、ゲティスバーグ(アメリカ南北戦争)と並んで「世界三大古戦場」に選ばれている。
とあったのだけど、本当なのかなあ? 三つの地名を英語で並べて検索しても それを裏付けるような結果にならなかったんで (まあ検索の仕方が良くないのかもしれない)、 「ビッグセブン」と同じ類の「アレ」なんじゃないかと思ったり思わなかったり。
Battle of Sekigahara - Wikipedia
英語版うぃきぺに「関ヶ原の戦い」のエントリがあったのはちょっと驚いた。
新刊近刊
ということでカーニハン大先生のページを見に行くと awk本第2版のことが書かれていた
The AWK Programming Language, Second Edition, by Al Aho, Brian Kernighan and Peter Weinberger. Book web site www.awk.dev. Available in paperback and e-book formats around October 1, 2023. Preorder at Amazon.
それと、例の翻訳作業中らしいあの本のことも
Unix: A History and a Memoir. Since its creation in a Bell Labs attic in 1969, the Unix operating system has spread far beyond anything its creators could have imagined. It has led to the development of a great deal of innovative software, influenced myriad programmers, and changed the path of computer technology.
(略)
Published by Kindle Direct Publishing, October 2019. Available at Amazon in paperback and e-book formats. Korean translation by 하성창 Sungchang Ha, August 2020. German translation, October 2020. Chinese translation by 韩磊 Han Lei, March 2021. Russian translation by Рузмайкина И, 2021. Polish transation by Piotr Cieślak, 2021. Translations into Japanese and other languages are underway.
まだ作業中なんですかね。 中国語版も読んでみたいけど どこかで手に入れられるんだろうか?
DO NOT ERASE
気にしてなかったけど、この本の原題ってこういうものだったのね。
"Do not erase" (日本語版: 数学者たちの黒板) という本を図書館で借りて眺めました。https://t.co/q3LSJCJS7E 数学者やそれに類する人々の黒板の写真とコメントを横長の見開きに100人分ぐらい並べた本です。シニアな人に偏らず、院生やらポスドクの黒板もたくさん混じってなかなか良かった。 pic.twitter.com/MljoauX6vE
— 🥑 (@yujitach) September 11, 2023
ただし(どこかの書評にもあったが)特定の地域の数学者に偏っているのですが、まあ別にこれはアートプロジェクトであり全世界の数学者の紹介が主目的ではないので僕は気にならなかった。ちなみにアメリカでは研究所等の黒板には「Do not erase」という札があって、清掃員に消さないようにお願いする時は
— 🥑 (@yujitach) September 11, 2023
それを立てかけておくからこういう題および表紙の本になっているのですが、日本ではそういう習慣は無いから、題と表紙は全然英語版から変えていますね。日本語版の出版社さんは良い仕事をしていると思いました。
— 🥑 (@yujitach) September 11, 2023
なるほどこれは翻訳本をどういうタイトルにするのがいいか悩むやつだ。
雑に作る
10月発行予定の新刊『雑に作る ―電子工作で好きなものを作る近道集』の情報をAmazonおよび楽天ブックスで公開開始しました!https://t.co/yY81e54JnFhttps://t.co/w0LVZIU0pn
— O'Reilly Japan (@oreilly_japan) September 12, 2023
タイトルだけはちょっと前から知っていたけど オライリーの本(原著もそうかはわからんけど)だったのか。
for
前回C72(というかK&R以前のC)には
for
文がなかったという話を書いたけど、
ふと、じゃあCの元になった(とされている)
BだのBCPL、CPLではどうだったんだろう?
と気になって調べてみると
B
- B言語 - Wikipedia
- B (programming language) - Wikipedia
- https://web.archive.org/web/20150611114427/https://www.bell-labs.com/usr/dmr/www/kbman.pdf
statement ::=
auto name {constant}01 {, name {constant}01}0 ; statement
extrn name {, name}0 ; statement
name : statement
case constant : statement
{ {statement}0 }
if ( rvalue ) statement {else statement}01
while ( rvalue ) statement
switch rvalue statement
goto rvalue ;
return {( rvalue )}01 ;
{rvalue}01 ;
ないですね。for文。
BCPL
6.12 for command
for N = E1 to E2 do C
あるけど形式が違う(Pascalっぽい)
CPL
でCPL。
- CPL (programming language) - Wikipedia
- Main Features of CPL | The Computer Journal | Oxford Academic
形式1
for v = 1,3, 6, 10 do <command>
形式2
for v = step E1, E2, E3
形式3
for v = step 0, 1, 10 then step 40, 2, 60
Algolっぽい? BCPLで単純なものになったのはいいとして、 Bでなくなったのはなぜだろう? (処理系の大きさを小さく抑えるため?)
BASIC
んで、BCPLのfor文をみていると そのPascalっぽさと BASICのfor文との違いが気になった。
for i=0 to 9
next
BASICのこれって、単語の違いを除けば FOTRANのDO文に近いかなと。
つまり、forに一つの文(複合文も一つの文とする)が「ぶらさがる」 のではなく、 文の並びが続いて、 ループ構造を閉じるキーワードがあると。
Little Smalltalk
Little Smalltalk:
— Torsten Bergmann (@TorstenAstares) September 12, 2023
"Not fast ... but a good tool to learn how to do a complete language implementation including garbage collection, compiling, interpretation, bootstrapping etc"https://t.co/P8D6mx8mRQ
kyle-github/littlesmalltalk: Little Smalltalk fork
awk
HNで The Awk book’s 60-line version of Make | Hacker News というスレッドが立ち、こういう投稿があった。
Ben notes that Kernighan regrets the way local variables are handled in Awk. I patched GNU Awk to have a @let extension that gives you scoped locals (usable in functions as well as in BEGIN/END blocks):
$ egawk 'BEGIN { x = 3; print x; @let (x = 4, y) { print x } print x }'
3
4
3
ふむ。そう言えば昔々の、フリーソフトウェア(やオープンソースソフトウェア)でない いわゆる商用のawk処理系で ローカル変数の宣言ができるようになっていたものが あったような気がするけど、 あれはどうしていたのだっけか。
スレッドのネタ元になった記事はgoawkの作者が書いたものだった模様。
The AWK book’s 60-line version of Make
gawk
Add do_csv API variable and documentation thereof.
--- a/ChangeLog
+++ b/ChangeLog
@@ -2,6 +2,16 @@
* field.c (do_split): Fix some whitespace.
+ Unrelated: Add do_csv variable to the API.
+
+ * gawkapi.h: Bump major version to 4, minor version back to zero.
+ (DO_FLAGS_SIZE): Increase to 7.
+ (gawk_do_csv, do_csv): New macros.
+ * gawkapi.c (init_ext_api): Init the do_csv element. Replace
+ numeric indices with symbolic ones.
+ * NEWS: Updated for do_csv in the API, and the major and
+ minor API versions.
+
2023-09-01 Miguel Pineiro Jr <mpj@pineiro.cc>
Fix the handling of zero-length matches in multibyte locales.
--- a/NEWS
+++ b/NEWS
@@ -25,6 +25,11 @@ Changes from 5.2.2 to 5.3.0
given code point is converted to its corresponding multibyte encoding
for storage inside gawk. See the manual.
+5. Because of the additional `do_csv' variable in the API, which breaks
+ binary compatibility, the API major version was updated to 4 and
+ the minor version was reset to zero. The API remains source code
+ compatible; that is, existing extensions should only require recompilation.
+
Changes from 5.2.2 to 5.2.x
---------------------------
FORTRAN Compiler on IBM 704
ちょっと余裕がなくて停滞中。
螺旋階段
1/8 この間、フランスのツイッターで話題になりましたが「ヨーロッパのお城にある螺旋階段が右回りで、その理由はお城の守備を支えるため」と良く言われていますが @AgeMoyen の調べによりこの説は嘘だそうです。すごく面白いので、ここで @AgeMoyen のスレッドを日本語で少し纏めます。 https://t.co/iWAiewxTgQ
— Xavier Archéo'Japon (@XavierMT3) September 11, 2023
アレクザンダー本
建築計画学とか都市計画学の分野の一部では一時的に話題にはなったように思いますが、盈進学園の高校ができたときに見学にいった友達があまりよい評価をしていなかったような微かな記憶があり、その後あんまり流行らなかったように思います。GOFの方がよほど流行ったという印象です。 https://t.co/SJ1zXlV1pZ
— Nobuo Yamashita (@nobsun) September 11, 2023
ちょっとお高い本だったので気軽に買えるものでもなく、 じゃあと図書館の蔵書を調べても住んでいる自治体の 公立図書館のどこにもなかったけど、 となりの自治体の図書館にはあり 貸出し券も作れたのでそこで借りて読んだなあ(長い前置き)。
貸出期間の2週間では深く読み込むのはまあ無理ぽなので その程度のものでの感想だけど面白いっちゃ面白かった(こなみかん)
GoFがこの本から影響を受けた云々はさておき、 (もちろん自分も含めて)ふつーのプログラマー (意地でも「エンジニア」とは書かない) が読んでどうかというと… どうなんだろう?
offsetof
[C++]Nullポインタ経由のstaticメンバへのアクセスは許されている。らしい。 - 賢朽脳瘏
そういやoffsetofマクロもnullポインターがらみの実装じゃなかったっけ?
transducer
My mental model of transducers
エリア16
人生はいつもゼビウス16エリアだと思って生きてる。
— YMCAT(迎霧狼慢)🪤🐀 (@info_ymcat) August 26, 2023
日々ツラいことや苦しさで消えたくなることも多いけど『ああ、今ゼビウス16エリアなんだ』と思えば『ここを抜けたらエリア7に戻って暫くはイージーモードだ』と思えば頑張れる。… pic.twitter.com/2D6LD9k4lg