2020-07-01から1ヶ月間の記事一覧

gcc 4.8.xでの標準ライブラリのバグについて

結構昔に書いていたっぽい下書きがあったので手直しして出しておこう。まあイマドキgcc-4.8.5を使う羽目になっている人はあまりいないだろうが、少なくともIssueが立つ程度には存在するようなので。 広く知られていることっぽいが、GCC 4.8系統の標準ライブ…

hugo-bookで左のmenuを折りたたむ

なぜか動かなくて2時間くらい溶かしたので備忘録。 まず、以下のようにfront matterにbookCollapseSection: trueを書いておくとそのセクションはメニュー上でFoldされる。 --- bookCollapseSection: true --- # TitleOfSectionThatShouldBeFolded これで動け…

テンプレート非型メタプログラミングでコンパイル時LISPを書く

C++

人類はちょっと窮屈な言語があったらすぐLISPとかBrainfxxkを作る 前回の記事でC++20でテンプレート非型メタプログラミングが簡単にできるようになって嬉しいねという話をした。まあ実際には型に情報を埋め込んでいるのでこの呼び名はミスリードだが。 やろ…

テンプレート非型メタプログラミング

C++

C++での黒魔術といえばテンプレート型メタプログラミングだ。これは、テンプレートがパターンマッチと再帰を使えることを利用して、型レベルで計算を行う技術を指す。 template<int X> struct factorial { // 再帰的に展開できる static const int value = factorial<X-1></x-1></int>…