CLINQ v126.96.36.199 is a maintenance release that entirely focuses on performance.
* Expression compilation caching - Expression<T>.Compile() is very slow and must be run every time a query is created. (This is a standard for most LINQ libraries these days.) For classes that are reused, queries were being recompiled each and every time these classes were instantiated. Now, compiled code for expressions is cached, resulting in a 109x performance increase for open expressions, and an 8x performance increase for closures. Added as an extension method to Expression<T> called CachedCompile().
* Added more generic Func delegates to System namespace - For some reason the .Net framework only supplies definitions of Func<T> up to Func<T1, T2, T3, T4, TResult>. We now generate up to T20, which should give you plenty of breathing room for complicated queries.
* Added Partial() helper extension - Added helper methods for Partial Function Application
* Smart Property Notification (From 188.8.131.52) - In previous releases of CLINQ, the adapters would attach to the source collection and would trigger re-evaluatons every time any property on any object changed. In CLINQ v2, the only time we ever re-evaluate the CLINQ query is when a property that actually impacts the result set is changed. In other words, if you are filtering a result set on Age but the Name property keeps changing over and over again, we will no longer be wasting CPU cycles doing needless re-evaluations.