ときどきの雑記帖 RE* (新南口)
The way to Reconguista
Zガンダム@テレ玉
「ムーンアタック」
- カミーユからのおみやげ
- Gディフェンサー?
- 世界が変わってきている
- 月は地続きだ
そう言えばエマさんとファの普段着も袖なしっすな。
次回「反撃」
dragonbox
How we made JSON.stringify more than twice as fast · V8
を「眺めて」いたら
A faster double-to-string algorithm
Converting numbers to their string representation is a surprisingly complex and performance-critical task. As part of our work on JSON.stringify, we identified an opportunity to significantly speed up this process by upgrading our core DoubleToString algorithm. We have now replaced the long-serving Grisu3 algorithm with Dragonbox for shortest length number to string conversions.
While this optimization was driven by our JSON.stringify profiling, the new Dragonbox implementation benefits all calls to Number.prototype.toString() throughout V8. This means any code that converts numbers to strings, not just JSON serialization, will see this performance boost for free.
Dragonboxなるアルゴリズムが。浮動小数点数の文字列化のアルゴリズムに Dragonなんとかって前にもなかったっけ? と調べてみると、それはたぶんDragon4で、 Dragonboxはかなり最近のものらしい
- GitHub - jk-jeon/dragonbox: Reference implementation of Dragonbox in C++
- How we made JSON.stringify more than twice as fast | Hacker News
- 浮動小数点数の10進表記についてまとめてみた - kubo39’s blog
- Dragonbox: yet another float-to-string conversion algorithm : r/cpp
time_t
つづき。
ところで別件で検索していたら江添さんのこんな過去の発言がひっかかった。
「ENIACが6台あれば世界の計算需要を満たせる」 https://t.co/mdFTUaQYXj
— 江添亮 (@EzoeRyou) August 23, 2024
前回の(発言としてはそちらが新しい) 「ENIACが数台あれば世界の計算需要を満たす」 よりも台数が明確になっているけど、 (勘違いや記憶違いではないとして) 誰の発言なんだろう?
一応、モークリー、エッカート、ノイマン、ゴールドバーグあたりは 調べたけどそれっぽいものは見つからず。
んで、SIX ENIACs とかで検索すると
コンピューター誕生の歴史に隠れた6人の女性プログラマー - 共立出版
この方々の情報がひっかかったり。 6台でも数台でも元発言を知りたいものだけど
それはさておきtime_t、 v7だとこんな感じの定義だった
include/sys/param.h:132:typedef long time_t;
include/sys/types.h:4:typedef long time_t; /* a time */
sys/40/param.h:132:typedef long time_t;
sys/h/param.h:132:typedef long time_t;
sys/h/smallparam.h:132:typedef long time_t;
sys/h/types.h:4:typedef long time_t; /* a time */
int
は16bitだしまあそうでしょうねという結果。
んで使っているところもあげると
src/cmd/sa.c:478: register time_t nt;
sys/sys/acct.c:89:register time_t t;
time_t
expand(t)
unsigned t;
{
register time_t nt;
nt = t&017777;
t >>= 13;
while (t!=0) {
t--;
nt <<= 3;
}
return(nt);
}
/*
* Produce a pseudo-floating point representation
* with 3 bits base-8 exponent, 13 bits fraction.
*/
compress(t)
register time_t t;
{
register exp = 0, round = 0;
while (t >= 8192) {
exp++;
round = t&04;
t >>= 3;
}
if (round) {
t++;
if (t >= 8192) {
t >>= 3;
exp++;
}
}
return((exp<<13) + t);
}
ついでにpccのソースも見てみたけど、少なくとも最初は int が16bitぽいすねえ
v7/pcc/macdefs
# define SZCHAR 8
# define SZINT 16
# define SZFLOAT 32
# define SZDOUBLE 64
# define SZLONG 32
# define SZSHORT 16
# define SZPOINT 16
新刊近刊
ぷよぷよ
8/8お知らせ: 技術評論社『すぐわかる!ぷよぷよプログラミングSEGA公式ガイドブック』の著者、紀平拓男さんから直筆POPをいただきました。ぜひ店頭でご覧ください。 pic.twitter.com/0Tf0TEhipt
— ジュンク堂書店池袋本店 PC書担当 (@junkudo_ike_pc) August 8, 2025
別の書店で見かけたので中身をちょっと眺めてみたのだけど、 プログラムの文字が小さくて読むのつらいっす😓
数学ガール
📚『数学ガール』の第7弾にして、最終巻📚
— 書泉_MATH (@rikoushonotana) August 7, 2025
特典付きは初回限定になります
『数学ガール リーマン予想』結城浩 2420円(SBクリエイティブ)
お早めにどうぞ!
書泉オンラインショップ⇩https://t.co/Z4TxFJbcGi pic.twitter.com/zjiAgseBGx
これの前に出たのって題材はなにでいつ出たのだっけ(秘密ノートは除く)? と調べてみると、2018年4月のこれっぽい 数学ガール/ポアンカレ予想 | 結城 浩 | 数学 | Kindleストア | Amazon
で、最初の 数学ガール | 結城 浩 | 数学 | Kindleストア | Amazon が2007年6月だから(6と7の間隔はさておき) ずいぶんつづいてたんですねえ
Exercise
Go とPythonもでるらしい
FORTRAN Compiler on IBM 704
- The arithmetic translator-compiler of the IBM FORTRAN automatic coding system | Communications of the ACM
- Assembly listing of transcription - Software Preservation Group
- FORTRAN II
LA4150 CAL ADSTAR 4F13919
SLW LAMBDA+4,A STO * IN LAMBDA+3(L+1)+1 4F13920
LA4170 PXD ,B 4F13921
LA4180 ARS 18 4F13922
STO LAMBDA+8,A STO S(N+2) IN LAMBDA+3(L+2)+2 4F13923
ORS LAMBDA+9,A STO -(N+2) IN LAMBDA+3(L+3) 4F13924
CAL STRSTR 4F13925
SLW LAMBDA+7,A STO SPOP IN LAMBDA+3(L+2)+1 4F13926
CAL ADSPOP 4F13927
ORA FSBITS 4F13928
ORA FNBITS 4F13929
SLW LAMBDA+10,A STO SPOP IN LAMBDA+3(L+3)+1 4F13930
LA4320 TXI **,A,-9 4F13931
SLW LAMBDA+7,A
のコメントが
STO SPOP IN LAMBDA+3(L+2)+1
になっているんだけど、このSPOPはコメントが間違ってんじゃないかなあ。
というのも直前にアキュムレーターにロードしているのが
CAL STRSTR
とSTRSTR(**
)だから。
SLW LAMBDA+10,A STO SPOP IN LAMBDA+3(L+3)+1
だと(おまけはあるけど)
CAL ADSPOP
できちんと(?) SPOP。
SLW LAMBDA+4,A STO * IN LAMBDA+3(L+1)+1
に関しては
CAL ADSTAR
なので
コメントと一致している
モアイの謎
EMOTION の立ち上げの二人、渡辺繁さんがパトレイバーのプロデューサー鵜之沢伸さんをバディにやっていく決意のこもったロゴマークなんですが、なぜモアイか聞いたけど忘れました😂 https://t.co/qUqziMatQC
— 高田明美(マミと野明の母(?)♡) (@AngelTouchPlus) August 2, 2025
こんなん出ました 歴史…https://t.co/G2iymt3yTx
— Aki (@ModsParka) August 2, 2025
渡辺繁さんご自身が当時のことを振り返る記事がこちらにありますので、よかったらご一読ください。https://t.co/7g5t7BnqCu
— 荒川直人 (@nao_arakawa) August 2, 2025
禁止?
UK moves to make C & C++ programming languages illegal to stop based coders from dereferencing the online safety act. pic.twitter.com/Z8tRZAuBVi
— hackerfantastic.x (@hackerfantastic) July 31, 2025
— ✨ 𝕄 𝕁 🪐 (@skizdidlyidler) August 2, 2025