ときどきの雑記帖 RE* (新南口)
神の左手悪魔の右手
よけいなもの
日本人投手を小ばかにした「巨人史上最強の助っ人」に仕返し成功! 大洋エース「遠藤一彦」が見せた1985年の“痛快ピッチング”(2ページ目) | デイリー新潮
これ、ホエールズ守備陣がベンチに戻った後に、 キャッチャーの若菜も(ベンチから)このポーズやったんだよね。 蛇足というかなんというか😓
映画
[B! 映画] 映画を見ようとしても上映スケジュールの発表が遅くて予定が立てられない!→動員数で決まるので働いている人すらわからない…
これはあるあるだし、公開二週目で上映回数がガクッと減らされて 時間帯も不便なところに押し込められたりな パターンがあったりしたので油断ならない。
メモ
【山田祥平のRe:config.sys】大きなデスクトップの功罪 - PC Watch
横須賀美術館
巨大ロボット、ジブリ…大型アニメ企画続く横須賀美術館に来場者続々 [神奈川県]:朝日新聞デジタル
神奈川県横須賀市の横須賀美術館で、集客力のある大型企画展が続いている。現在開かれているのは「日本の巨大ロボット群像」。 ふだん美術館に足を運ばないような来場者の姿もあるといい、2月10~12日と23~25日の2回の3連休では、 計6千人以上が訪れる人気ぶりだ。3月20日には「鈴木敏夫とジブリ展」が始まり、開館以来最多の来場者数を見込んでいる。
ううむ早いところいかないとだわ
GFNI
最近のx86にはGFNIという命令セット拡張があります。命令セットオタクならきっと対応CPU搭載マシンを持っていることでしょう。 私はもちろん持っています。Galois Fieldとか言ってますがこれはビット演算の強化版と思うこともできて、 例えばbit reverseなんかが実現できます。
なにそれ。と調べたら本当にGalois Fieldとかあってびっくりした
- Galois Field New Instructions (GFNI) - x86 - WikiChip
- Galois Field New Instructions (GFNI) Technology Guide
The Galois Field New Instructions (GFNI) introduced in 3rd Gen Intel® Xeon® Scalable processors were designed to accelerate cryptographic and security applications. With
新刊近刊
実践 生成AIの教科書 ――実績豊富な活用事例とノウハウで学ぶ | 株式会社 日立製作所 Generative AIセンター |本 | 通販 | Amazon
日立グループは2023年、データサイエンティストやAIの研究者、広範なスペシャリストをGenerative AIセンターへ集結。 全社での生成AI活用を推進し、そこで得た知見を顧客へ提供しています。
本書ではそうしたナレッジをいち早く紹介。一般的なデスクワークからコールセンター、システム開発、 社会インフラの維持・管理、データサイエンスまで、国内屈指の実績に裏付けられたAI活用のノウハウを惜しみなく開示します。
preporocessr
ひょろっと探したら謎の実験をしている人がいた。 https://t.co/dsNjPoiEqn
— Yu SUGAWARA (@gusmachine) February 26, 2024
> どうして7 8 8 G(9) で展開が終わるのかが良くわかりません……。
これよくわからないな。 GCC でも clang でも再現するから規格準拠っぽいけど。
なんだろうと元記事を読んでみた
しかし関数型マクロの場合は、不思議な挙動を示します。
循環する関数型マクロ定義
#define F(a) a G #define G(a) a F(a) F(7)(8)(9)
循環する関数型マクロ定義、結果
7 8 8 G(9)
そもそもこんなマクロ定義や使い方ありなのかと思ったが
#define foo bar
#define bar(x) realfunction(x)
foor(123);
みたいなものか。 それはそれとして、 規格はどうなってるのよと思ってちょっとだけ 調べてみたがよくわからんな。
Tokenization (The C Preprocessor)
Once the input file is broken into tokens, the token boundaries never change, except when the ‘##’ preprocessing operator is used to paste tokens together. See Concatenation. For example,
example-15 #define CHAR_CLASS_TRANS SWAPU16 example-16 #define SWAPU16(w) ((((w) >> 8) & 0xff) | (((w) & 0xff) <<8)) example-17 #define CHAR_CLASS_TRANS(w) SWAPU16(w)
7.2.4 関数型マクロとして展開されるオブジェクト型マクロ
(testcaseは特に用意していない)
この例は規格準拠性の問題ではない。しかし、Cプリプロセスの歴史を考えるには 示唆的な例であるので、ここでとりあげておく。
展開すると関数型マクロ(function-like macro)の名前になるオブジェクト型マクロ (object-like macro)ぼ定義がときどきある。このマクロの呼び出しは後続する トークン列を取り込んで、関数型マクロとして展開されることになる。マクロ展開の この仕様はC90以前からの伝統的なものであり、C90でも公認されたものである。その 意味ではportabilityが高いともいえる。example-15のようなオブジェクト型マクロの 定義があり、SWAPU16の定義を見るとexample-16のようになっているというものである。
しかし、オブジェクト型マクロと見えて実は関数型マクロとして展開されるマクロ というのは、少なくともreadabilityが悪い。そういう書き方をするメリットもないと 思われる。この書き方の背景にあるのは、エディタによる一括置換の発想であり、 Cの関数型マクロの書き方としては感心しない。これは初めから関数型マクロとして example-17のように書いた方が良い。
問題のマクロの
a G
はこのGが、
元のテキストの()
とくっついて
関数型マクロとして呼ばれる
という「回り道」をしているから
ああいう結果になった?
- ソースチェックに威力を発揮するCプリプロセッサ - 世界一の規格準拠性と豊富な診断メッセージ -
- 規格準拠性に優れたCプリプロセッサMCPP | CiNii Research
- mcpp – a portable C preprocessor with Validation Suite
- lua-mcpp/mcpp/doc-jp/mcpp-manual.html at master · jjensen/lua-mcpp · GitHub
- lua-mcpp/mcpp/doc-jp/mcpp-porting.html at master · jjensen/lua-mcpp · GitHub
- 規格準拠性に優れたCプリプロセッサMCPP | CiNii Research
- mcpp – a portable C preprocessor with Validation Suite
C のソースが読めない理由、8割くらいはプリプロセッサマクロのせいなんだよなあ。Linux kernel の場合はそもそもいわゆるフリースタンディング環境だし、gcc 拡張とか使ってて標準 C から逸脱してる部分もそれなりにありそうだし。 https://t.co/pQn5YAmP8r
— AoiMoe a.k.aしお兄P (@AoiMoe) February 26, 2024
Weak symbol
「weakが満足に扱えなかった」というのは(たぶん)その通りで、 この辺はリンカーの「配慮」も必要だったけど リンカーには手を付けなかった(つけられなかった)ので そうなっていたと認識している(名前のmanglingもそう)。
- Weak symbol | MaskRay
- Visual C++ でのweak symbol - 見切り発車
- Weak symbol - Wikipedia
- weakシンボル - Shohei Yoshida’s Diary
- The Secret Life of C++: Symbol Mangling
- IBM Documentation - Documentación de IBM
- Name mangling - Wikipedia
- Visual C++ name mangling - Wikiversity
match
「matchは…matchは要りませんか?値、識別子、型、和集合も簡潔に書けます…」
— ((🐑#)) (@Sheeeeepla) February 23, 2024
ガタ
ガタが来た ガタが来た
— 森川真 (@mmww) February 24, 2024
どこに来た
肩に来た 腰に来た
脳にも来た
タイガー
こんなイベントやってたのか
企画展「タイガー計算キ展」を開催します。
— 東京農工大学科学博物館 (@tuat_kahaku) November 2, 2023
本学工学部所蔵「西村コンピュータコレクション」より、機械式計算機器を中心に展示します。ハンズオンコーナーもあります!ぜひ実機を操作してみてください。
11/11(土)より2024/6/1(土)まで。11月12日(日)は臨時開館です。ご来館お待ちしています。 pic.twitter.com/W5ZeQUyZsb
2月10日(土)14:30よりトークイベントを開催します。農工大の授業でタイガー計算器がどのように取り入れられてきたのか、名誉教授や当時の在学生等をお呼びしてお話を伺います。予約不要。肩の凝らないイベントです。ぜひご参加ください!#タイガー計算機 #タイガー計算器 #タイガー計算キ展 https://t.co/U4xoZ2HtCW pic.twitter.com/WaDxnosRVg
— 東京農工大学科学博物館 (@tuat_kahaku) February 8, 2024
Lisp
おら、LispでPHP書いて生計立ててえ https://t.co/lCVAm3DQl2
— にゃんだーすわん (@tadsan) February 25, 2024
and
true and false は、falseになると思ってたんだけど。
— しめじ(smeghead) (@smeghead) February 28, 2024
たぶんRuby(Perlの可能性もあるけど)の話だと思うんだけど、
勘違いじゃないかなあ。これ。
true and false
の評価結果はfalseのはず。
>irb
irb(main):001:0> true and false
=> false
irb(main):002:0> puts true and false
true
=> nil
irb(main):003:0> puts true && false
false
=> nil
irb(main):004:0> v = true and false
=> false
irb(main):005:0> v
=> true
irb(main):006:0> v = true && false
=> false
irb(main):007:0> v
=> false
irb(main):008:0>
シモキタ
小田急線の下北沢駅がプリキュアだらけですごいことになってるから見に来てほしい。
— I LOVE下北沢🌻 (@love_skz) February 27, 2024
テイストが違う絵柄で楽しいよ☺️ https://t.co/mfYj0Wd34v pic.twitter.com/E3t4mEYoOe
下北沢に「プリキュア」期間限定ポップアップストア シリーズ20周年記念企画 - 下北沢経済新聞
すみだ北斎美術館
すみだ北斎美術館の正面アプローチのコンクリ面、雨で濡れた時に人物と青海波が浮き上がるようになっている。普段は気づかない。 pic.twitter.com/7YBYFhb9VU
— 雪りん (@ykkykym) February 27, 2024
すみだ北斎美術館は何度か行ったけどそんな仕掛けがあったのか