文字列に頼らないリフレクション

なんかまた最近流行っぽいので.
拙作 Achiral では,ConstructorInfo や PropertyInfo を以下のように文字列に頼らずに取得可能です.

using System;
using System.Linq;
using System.Reflection;

using Achiral;
using Achiral.Extension;

static class Program
{
    static void Main(string[] args)
    {
        var member_info_list = new MemberInfo[]
        {
            Make.ConstructorInfo(() => new Version()),
            Make.PropertyInfo(() => Environment.CommandLine.Length),
            Make.MethodInfo(() => Console.WriteLine(default(int))),
        };

        member_info_list.ConsoleWriteLine();
    }
}

うちの日記での初出は『日本語識別子,Member Renaming,strong-typed reflection - NyaRuRuの日記』あたりですかね.私も当時この手法を知って結構感動した記憶があります.