0. はじめに TypedSql は、ある日ふと湧いた「ちょっとした不満」から始まりました。 .NET でコードを書いていると、「クエリっぽい処理」を書く場面がよくあります。 例えば、すでにメモリ上にある List<T> や配列をフィルタして、一部の列だけ取り出したいときです。 そのとき、だいたい次の 3 つの選択肢があります。 素直に foreach で回す — 速くて明示的だけど、ちょっとコードがうるさい LINQ(Language Integrated Query)を使う — 書き心地はいいけれど、イテレーターやデリゲートのオーバーヘッドが気になる いっそデータベースに突っ込んで、本物の SQL を書く — さすがにやりすぎ感がある 「もう少しだけ“ちょうどいい”選択肢が欲しいな」と思ったところから、TypedSql の実験が始まりました。 そこで出てきたのが、こんな発想です。 C#

