Great video! I have been debating the pros and cons of reflective programming with somebody in the Techoff threads who is adamantly against it, and many of the points I would have liked to have made in favor of dynamic languages and better type systems
were made here in this video and in a more eloquent manner. Keep up the good talks, Charles!
However, I'm assuming that you reference reading other material because you yourself don't truly understand the why.
If you did, you could have explained it.
No, I referenced them, because they explain some of the benefits of pure functional programming where the minimization of shared mutable state can enable opportunities to simplify the construction of highly concurrent software.
Not sure why I wasted my time though. You're rude.
Why functional programming? See Joe Duffy's video on ParallelFx here on C9 and Simon Peyton Jones' papers on Software Transactional Memory on the MS Research site for a couple approachs to improving the concurrency of applications in this multi-core age
we live in.
I really don't like the "shiny objects" analogy. Try asking IBM how many of those conversions from mainframes to Microsoft software were "green fields." Now that Microsoft is the landscape, not IBM, suddenly those "green fields" are "brown fields?"
The disconnect here is why those libraries that are only available to C++ programmers are not available to .NET programmers. Maybe you should have made them available to .NET programmers? Not only are they not available, but there is no publicly available
roadmap for when that might happen, if ever.
You should definitely check out Tomas' blog, which littleguru linked above. He has an article with a code sample library for implementing asynchronous workflows-like code in C#, as well as a nice set of articles introducing F#.
As interesting as F# is, I would still love to see LISP or SCHEME running on the CLR/DLR. I would find it absolutely delightful if a user-friendly dialect of LISP became the most popular software development language 5 years from now, with versions to generate
CIL and JVM (and maybe Dalvik) bytecode.
It was an option to download during the installation for the Express Editions. I can't imagine it being unavailable for the Standard, Professional, and Team System editions. Perhaps it is available as a separate MSDN download?