Detached.RuntimeTypes (nuget): It allows devs to create tools like dynamic proxies, comparers, dirty check (INotifyPropertyChange without having to manually emit op codes. Methods can be defined using Expression trees.
Keywords: reflection|emit|dynamic|dynamic-type|dynamic-method|proxy|patch|INotifyPropertyChange