見出し画像

良いコード・美しいコードと頭のいいコード

日経XTECの連載「まつもとゆきひろのプログラミング質問箱の本日(2025.2.6)の記事:

は、なるほど!という内容でとても考えさせられましたが、中でも後半で取り上げられていた「美しいコード」に関する説明に興味があり、特に「素晴らしいコード」のうち、「頭の良いコード」の部分が気になりました。

上記の記事から一部引用

 上記の記事の「頭のいいコード」についての部分を引用すると。
ーーーー 引用ここから ーーーーー
『後は書籍「ハッカーのたのしみ─本物のプログラマはいかにして問題を解くか」(エスアイビー・アクセス刊)で紹介されているようなビット操作を中心にしたテクニックも「頭のいいコード」ですね。この本は大変な良書ですが、20年も前の本なので絶版状態で、今は古本でしか入手できないようです。』
ーーーー 引用ここまで ーーーーー

販売されていた!

 大変な良書というのが気になって「ハッカーのたのしみ─本物のプログラマはいかにして問題を解くか」でググってみたら、Amazonで買えるのだった。(古本や、価格の安いOD版もあり)

 さらに、調べてみると第2版もあるとのことだが、それは和訳されていないようだ。でも今読むなら第2版がみてみたい。

第2版は原文のPDF版が有った

 原題の「Hacker's Delight 2nd Edition.pdf」で検索すると、ネットからDLできた。(著作権上グレーなのでリンクは省略)
ここは中国系?のようで、他にはコンピュータサイエンス系のPDFなど、特に中国語版がたくさん公開されていた。

読んでみる(眺めてみる)

 英語力が無いので眺めた程度だけど、数学的な理論が多くて数学力&センスが乏しい私には理解し難い内容だった。
 サンプルコードはC言語なので、なんとなくわかるが、その原理原則がちょっと難解な部分が多い。
 頭の良いコードは頭の良い人でないと理解できないのだった。

おまけ

ついでに、「Algorithms_on_String_Trees_and_Sequences-libre.pdf」というものもあったので、ダウンロードしてみた。
 こちらのサンプルコードは、代入が := なので、Pascal か?と思ったが、begin ----- end. 構文が begin ----- end; なので違う言語だ、なんの言語だろ?


いいなと思ったら応援しよう!