I am really glad to see that many of the ideas of functional programming are finding their way into mainstream. Once our programs are captured declartively (e.g. using Abstract Syntax Trees as in LINQ), opportunities for implicitly identifying and exploiting parallelism emerge. NIP was all about that but we didn’t go as far as integrating it with a declarative description of a program (although we always had UFO in mind).
PLinq soudns fun. In due time, I am hoping my group will also invest some effort in this extremely interesting space. Well, I am pushing for it anyway.