Counting 1 bits.

Go 標準ライブラリの中に符号なし整数をビット列と見たとき、 1 のビットを数える関数がある。この実装がなかなか膝打ちのアイデアで面白い。なおここで紹介するアイデアは "Hacker's Delight" 第5章に詳しく書かれている。 例 以下の 16 bit の数を考える。…

++i is better than i++ in C++?

タイトルの答えは条件付きの Yes。その条件は「インクリメントする式の値を無視する場合」というもの。 たとえば次のように単にiをインクリメントしたい場合++iと書くほうが良い。 int i = 0; while (true) { // use i i++; } 何故「良い」のかはGoogleのC++…

Zen言語で作るRISC-Vエミュレータ、その1

Zen言語とは今注目の言語です。 そしてRISC-Vとは今注目の命令セットです。 (多分に個人的感想ですが)どちらも聞かない日はありません。 そんな両者の接点ともいえるエミュレータを開発します。現時点で実装している命令は5種類のみですが、 第一目標のフ…

xv6 initプロセス ことはじめ

あるプロセスには親プロセスという生みの親がいます。その親にも親がいます。 そして、プロセスの系譜をさかのぼり続けると一つのプロセスに行き着きます。 それはinitプロセス。Unix及びUnix系のOSではこの名前がついています。*1 またタイトルにあるxv6と…

浮動小数点数の悲劇

"Roundoff Error and the Patriot Missile" を読んだ。以下要約。 場面: 1991年2月25日 湾岸戦争 アメリカvsイラク 結果: イラクのスカッドミサイルがアメリカ陸軍兵舎に向け放たれた。 アメリカのパトリオットミサイルは迎撃に失敗、28人の兵士が死亡。 原…

Go言語でつくるインタプリタ

読んでいる。 www.oreilly.co.jp

欅坂46 ブログの自動生成 (開発日記)

以下は先日ポストした欅坂ブログ自動生成アプリ「zelkova」 github.com の開発日記です。 当初はアンドロイドアプリとして動かそうと思っていましたが、PCのターミナル上で自動生成できたところで、日記として掲載します。 --------------------------------…

欅坂46 ブログの自動生成

例 開発と感想 使い方 1. 例 平手友理奈: 洋服の時に少しねるだったなぁ。みなさんにぽんちゃんの顔スペシャル…よい!あと、声を結構まんじゅうさせて大好きな!!雰囲気が…感じさせてしまって(。-∀-)(では、おやすみなさいばい✋ー(*´▽•,,`)ノひキリトリら✋こんばん…

「数学は遅効性がある」

大学院時代、慕っていた先生の一人から聞いた言葉。 聞いた当初は「巧い言い方だな」と思った。 今数学が役に立たなくても、必ず実を結ぶ時が来る、 それは(一抹には)確かにそうだと思う。 だがうがった捉え方をすれば、数学に苦しむときはいつも”今”であ…

「ふつうのLinuxプログラミング」2周目

2周目。 vimに慣れること、 HTTPサーバをc言語で書くこと、 この二つを目指す。

興味があること

・Linux全般 ・サーバーサイドエンジニアとしての技術