For those of you who are interested in using or trying Microsoft development tools, I’m happy to report that Visual Studio 2010 Beta 1 is now available.
If you’re interested in:
- concurrency and parallel computing, check out the new concurrency runtime (ConcRT) that implements efficient work stealing for scalable code, the Asynchronous Agents Library and the Parallel Patterns Library (PPL) for C++, and the Task Parallel Library (TPL) and Parallel LINQ (PLINQ) for .NET. And some nifty concurrency debugging and profiling tools, too.
- C++0x features, check out the lambda functions (my fave), move-semantic rvalue references, the new auto, its good friend decltype, and the ever-helpful static_assert.
- functional programming in VS, enjoy the F# programming language.
Remember this is just a beta and not intended for production use, but there’s a lot of cool stuff to play around with and it should run fine side-by-side with VS2008. Feedback via forums or filing a bug/suggestion is always appreciated. Enjoy!
My admiration for EDG guys now grew even more, when MS decided to build on their software. Only 5 guys, … unbelieveble.
That makes sense. Thanks
Appu: That’s just part of the process of switching to the EDG front-end. EDG didn’t already support C++/CLI syntax, so one of the things on our to-do list is to add that. It probably won’t be in time for this release, but it’s on the list.
VCBlog says VS2010 will have no intelisense support for C++/CLI. I wonder why it is so? Microsoft is not considering C++/CLI as a first class CLI language?
Sunil: Maybe, and if so I suppose that would be necessary, respectively. :-)
Thanks – that makes sense.
Is the plan eventually (i.e. in v.next) to replace the front-end in the compiler with EDG as well?
If so will EDG be supported to support microsoft extensions (such as C++ / CLI etc.)?
Sunil: It’s exactly what I meant, but at that time I couldn’t say that the new front-end was EDG.
Note that EDG is the new front-end for Intellisense only in VS 2010, which has made Intellisense more accurate and faster. The compiler that compiles your code is still the same compiler, plus new features of course.
On the VCBlog they have said they are using the EDG front-end for intellisense. I recall a while ago you said you were working on a new VC++ front end. Has this been cancelled in favour of just using EDG?
Been having some fun with the new language features: http://incrediblejourneysintotheknown.blogspot.com/2009/05/vc16-has-decltype-in-beta-1-so-linq-to.html
Haven’t been able to find unique_ptr though – am I look in the wrong place or is there a solid implementation I can get from somewhere to drop in?
My first impression is the IDE is too heavy. While 2005/2008 (actually 2008 is faster/lighter than 2005) load amazingly fast this one takes longer and consumes more memory. For people like me that usually have 3 or 4 IDE opened this can be an issue.
1) Profiling is not available in Beta1. :-(
2) tools->options->vc++ directories are now removed – use property page instead :-) msbuild is for sure promising.
3) compiling time is reduced (i have not tested it yet, but that is what it looks like)
4) IntelliSense still not working with boost/huge templates…
Thank you, MS for perfect ppl/agents library!
Pingpong: Yes, that’s already been fixed. Hello world does of course compile in general, but you’re right that in the IDE the default settings for a new C++ project should be to a mode that allows plain main() instead of expecting a nonstandard Unicode flavor. We’ve fixed this so that in the next beta main() will be picked as the entry point if it exists.
Also included in VS2010 (and included in this beta release) are significant extensions to Dotfuscator CE that permit
* the injection of feature and session monitoring (streaming usage data to a developer-specified endpoint),
* the injection of application expiry dates, and
* the injection of tamper defense and notification.
Opt-in/Opt-out logic can also be injected.
Microsoft first announced this functionality at PDC2008
http://www.microsoft.com/Presspass/press/2008/oct08/10-27PreEmptivePR.mspx
If you want a detailed walk through, check out Bill Leach’s blog entry at http://blogs.preemptive.com/post/Whate28099s-new-with-Dotfuscator-in-Visual-Studio-2010-Beta-1.aspx
And for those that subscribe to Directions On Microsoft, there is a review of this functionality included in the June Update
It fails the initial test of copying a small VS 2008 VC++ MFC application over and compiling, or at least giving error messages useful for diagnosis and error correction. On first impressions, this isn’t anywhere near beta quality yet.
What about basic stuff, like compiling ‘Hello World’?
http://virtualdub.org/blog/pivot/entry.php?id=252
Jeff: All but one (lambdas). Though, there supposedly is an experimental lambda-branch.
The AAL/PPL libraries sound interesting. Maybe something similar could make it into a TR2. ;)
Does gcc already support those C++0x features?