InfoWorld preview: Visual Studio 2010 Beta 2 impresses
A wealth of additions, refinements, and bug fixes has Microsoft's IDE pumped up and primed for March release
I'm happy to see that F# shipped with beta 2. F# is a dialect of ML (OCAML) for .Net and supports functional programming, compositional programming, lambda expressions, immutable data types, pattern matching, and both asynchronous and parallel programming (see figure). It also has an interactive interpreter, fsi, which can run as a console or as a window inside Visual Studio.
IntelliTrace adds historical debugging to Visual Studio's excellent live debugger. It supports debugging Visual Basic and C# applications that use .Net version 2.0, 3.0, 3.5, or 4, and F# applications on an experimental basis. It doesn't support C++, script, or other languages, and it doesn't support Silverlight, Xbox, SharePoint, or Windows Mobile applications.
The F# language, a .Net version of the functional programming language OCAML, has graduated from Microsoft Research and is part of Visual Studio 2010. This screen shows how F# integrates with the Visual Studio live debugger and the new IntelliTrace historical debugging facility.
.Net and concurrency
.Net 4 beta 2 includes many worthwhile new features. One of the most interesting is an improved model for parallel computing, found primarily in the new System.Threading.Tasks namespace. Similarly, Parallel LINQ (PLINQ) is a parallel implementation of LINQ to Objects. Also, .Net 4 includes a simplified security mode, better runtime monitoring, background garbage collection, code contracts, the dynamic language runtime (supporting F#, IronPython, IronRuby, etc.), and a bunch of constructs (for example, memory-mapped files) that were previously available only as interop calls into the Win32 API.
C++ programmers can use the new Concurrency Runtime to simplify parallel programming. This new addition to the C runtime library allows for high-level parallelism using parallel patterns, asynchronous agents, a task scheduler, and a resource manager.
The ASP.Net "new Web site" wizard is greatly improved. It starts you with a password system, jQuery scripts, a site master frame with navigation and login, and both Default and About pages. There's enough in that starter project to get you going quickly with a Web site that conforms to ASP.Net best practices.
The starter project for an ASP.Net Web site now includes a site master page, a home page, an about page, a login page, and both registration and navigation logic. In addition, a documented jQuery library is included in the project.