D言語

【D言語】isPODについて

dmd 2.061がリリースされましたが、isPODがtraitsに追加されました。

【D言語】UDAの記法が変わってた【UDA】

少し見ない間に変わってました。

【D言語】Voldemort Typeについて【名前を呼んではいけないあの型】

D言語erのみなさん、あけましておめでとうございます。 今回は、ニュースグループでよく目にするけれど、日本語の資料は全くないVoldemort Typeについて、語っていきます。 大丈夫です、ハリー・ポッターのヴォルデモートであってます。

【D言語】無名列挙体のメンバを取得したい【enum】

最近、グローバルに定義された無名列挙体のメンバをコンパイル時に取得したいということがありました。 しかし、どうにもうまく行きませんでした・・・

【D言語】dmdのバグ【Issue 9169】

D言語erの皆さん、こんにちは。 今回は、ついこの前、間接的に(?)ぶつかったバグである、Issue 9169を軽く紹介していきます。 あまり関係ないですが、もうバグ報告数が9000を超えたんですね・・・

【D言語】ctpgの演算子たち【ctpg】

D言語erの皆さん、こんにちは。 今回は、D言語の話題に戻って、ctpgの演算子を少し紹介します。

【D言語】forwardについて【std.algorithm】

今回は、std.algorithmに最近追加された、forwardテンプレートについて見ていきます。

【D言語?】ctpgの実装について【ctpg】

D言語erの皆さん、こんにちは。 今回は、D言語で書かれたパーサジェネレータである、ctpgの実装についてちょっと話していきます。

【D言語】-profileで関数の実行時間を計測してみる【dmd】

D言語erの皆さん、こんにちは。 今回は、-profileを使って、関数の実行時間を計測してみます。

【D言語】UDAが登場!!使い方を探ってみる!!

D言語erの皆さん、こんにちは。 今回は、最近になって、なぜかウォルたんによって実装された新たな機能である、UDAの使い方について少し書いていきます。

【D言語】パーサジェネレータライブラリ:ctpg v1.0.0 リリース!

D言語erの皆さん、こんにちは。 タイトルにもある通り、ctpgのv1.0.0をリリースしました。 https://github.com/youkei/ctpg

【D言語】エラーの行数がおかしいバグ【Issue 8825】

D言語erの皆さん、こんちには。 今回は、最近見つけたバグについて語っていきます。

【D言語】任意のコンパイルエラーを出す

D言語erのみなさん、こんにちは。 今回は、D言語で任意のコンパイルエラーを出す方法について語ります。

【D言語】enumを使った配列のコンパイル時定数は遅い?

D言語erの皆さん、こんにちは。 今回は、enumを使った配列のコンパイル時定数の読み取り速度について書いていきます。

【D言語】テンプレートの遅延インスタンス化

D言語erの皆さん、こんにちは。 今回は、テンプレートの遅延インスタンス化について語ります。

【D言語】__LINE__と__FILE__のバグっぽい挙動

coi loi pilno lo dy. zei bangu dmd v2.060は、template引数のデフォルト値で使われるLINEとFILEについてバグっぽい挙動をします。 その辺について語っていきます。

【D言語】文字列mixinと#lineを組み合わせる

D言語を使うと、文字列mixinと#lineが両方そなわり最強に見える とよく聞きます。 今回は、文字列mixinと#lineの組み合わせが、どう最強に見えるか解説します。

【D言語】ForwardRangeのsaveとは何か?

今回は、ForwardRangeのsaveについて解説します。

【D言語】動的配列を引数とする関数のメモ化

今回は、タイトルにある通り、動的配列を引数とする関数のメモ化に関する問題を掘り下げます。

【D言語】MessagePackを使う

今回は、D言語でMessagePackを扱う方法をとても簡単に紹介します。

【D言語】std.typecons.Tupleを使う

今回は、std.typecons.Tupleとその用途を解説していきます。

【D言語】なぜ is( typeof( { ... } ) ) は動くのか

今回は、D言語でイディオム的に使われている is( typeof( { ... } ) ) の仕組みについて解説していきます。 まずは、 is( typeof( { ... } ) ) のより一般的な場合である is( typeof( Expression ) ) を見ていきます。

【D言語】dmd 2.060 のリリース

先日、dmd 2.060がリリースされました。 ChangeLogを読んで、気になった項目について詳しく解説していきます。

【D言語】任意のメンバー関数の存在を確かめる方法

前回の記事では”型Tがメンバ関数fooを持っているかどうかを確かめるテンプレート”を紹介しました。 しかし、fooで決め打ちというのは、使い勝手があまり良くありません。 そんなわけで、今回の記事では”型Tが任意のメンバ関数を持っているかどうかを確かめる…

メンバー関数の存在を確かめる方法inD言語

D言語でも、メンバー関数の存在を確かめることができます。 なので、今回は"型Tがメンバ関数fooを持っているかどうかを確かめるテンプレート"を紹介します。

D言語の動的配列

D言語の動的配列は、C言語などの配列とはかなり違うので、そのへんをつらつらと語っていきます。

D言語の標準ライブラリを読む read!(std.functional, 2)

前回に引き続き、今回もPhobosのstd.functionalを読んでいきます。 今回は、 std.functional.memoizeを読みます。

D言語の標準ライブラリを読む read!(std.functional, 1)

D言語を勉強したいなら、標準ライブラリであるPhobosを読めとよく言われています。 D言語の機能の殆どは、Phobos内で使われていると言っても過言ではないでしょう。 そんなわけで、std.functionalモジュールのソースコードを読んでいきます。