Editor's Note

Shine a (Silver)Light on Me

So you think you've got a handle on Orcas and .NET 3.0/3.5? Brace yourself as Microsoft casts everything in a new (Silver)light.

"Let me get this straight? You want to write a web plug-in VB .NET? that doesn't require the full .NET framework to be installed? and runs on the Mac? and Firefox ? but supports the full VB .NET language? Uh? Okay, let's chat."

—Joe Binder and the VB team, posted on the Web site, The Visual Basic Team, a blog hosted by—you guessed it!—the VB team.

So, you're a Visual Studio developer, and you think you've gotten your head around the crux of the new features that Orcas and Windows Vista/.NET 3.0/.NET 3.5 introduce.

You've come to terms with Language Integrated Query (LINQ); the Windows Presentation Foundation (WPF) and Extensible Application Markup Language (XAML); Windows Workflow Foundation (WF); the Windows Communication Foundation (WCF) and the way it unifies Web services, .NET remoting, distributed transactions, and message queues. You understand that you can use most of these features now in Windows Vista, but Orcas will simplify taking advantage of these features with tools that add higher level abstractions for manipulating these technologies.

Yes, yes, you know all this. But are you also aware that Microsoft is about to shake things up again?

At its MIX07 development conference held in Las Vegas in late April, Microsoft provided some new details about Silverlight, its new Web-based presentation framework intended to run on a variety of platforms (such as Windows and the Mac), in a variety of browsers (including Internet Explorer and Mozilla's Firefox). Silverlight's former name, WPF/E, where the "E" stands for "everywhere," provides telling clues about its purpose. It builds on WPF in the .NET Framework 3.0 to create applications that run, well, in a lot of places, if not exactly everywhere. You can find more information about this technology on Microsoft's developer Web site (http://tinyurl.com/39h5ce).

The quote that opens this article is taken from the VB team's blog (visit the entry at http://tinyurl.com/2rhgzc) on this topic and how it relates to Silverlight. (I recommend checking out the VB team's blog home even if Silverlight doesn't interest you, because it provides nice first-hand information on the direction of VB from the people responsible for implementing its features.) You should also be sure to check out Bill McCarthy's What's Hot department in this issue, which tells you where you can get many of the downloads to give Silverlight 1.1 a try.

Paraphrasing from the VB team's site, Silverlight will support many of VB's features, including late binding; implicit and explicit type conversions; LINQ for Objects; string utilities such as Len (), InStr(), Mid(), UCase(), and so on; as well as the VB Collection and generic collection types. Silverlight will also support all core VB-language constructs, such as type inference, anonymous delegates, and handles.

The Silverlight runtime is significantly smaller than the .NET runtime, so obviously it doesn't incorporate everything that the .NET runtime includes. According the VB team posting, Silverlight won't support the My namespace, XML literals, COM components, or the FileSystem Object.

———— * * * ————

The One and Only VB
At the MIX07 conference, an informational poster contained a reference to both Visual Basic and something called "VBx" that was shown with a "Soon" flag. Paul Vick, technical lead on the Visual Basic language, explained in a blog entry that VBx refers to the next major version of Visual Basic after Orcas (http://tinyurl.com/2lud9h). In a separate entry (http://tinyurl.com/2mctrx), Paul cautioned that planning for the next major version of VB is still in its early stages—Orcas isn't even feature complete at this time—but that didn't stop him from laying out some design goals for the next version, which I recommend checking out. For example, he mentioned that "Visual Basic should become a hostable language that can be used to do application scripting easily, ? [and that] this hostable language engine should be fully portable to all platforms supported by Silverlight..."—a message consistent with the VB teams' post on Silverlight.

It's worth emphasizing that there is but one Visual Basic language; VBx isn't a separate scripting variant. That said, you'll have to accept certain limitations when programming for Silverlight (as described above). I've heard some developers grumble that you'll have to keep different sets of capabilities in mind when programming for WPF versus Silverlight, but in all honesty, that isn't too far afield from where we are now, when developers must keep track of different requirements for programming against portable devices versus the desktop when creating applications that target both.

Patrick Meader
Editor in Chief

Talk Back: Are you excited about what Silverlight represents for the future of Visual Studio development? Write us at [email protected] .

About the Author

Patrick Meader is editor in chief of Visual Studio Magazine.

comments powered by Disqus

Featured

  • Windows Community Toolkit v8.2 Adds Native AOT Support

    Microsoft shipped Windows Community Toolkit v8.2, an incremental update to the open-source collection of helper functions and other resources designed to simplify the development of Windows applications. The main new feature is support for native ahead-of-time (AOT) compilation.

  • New 'Visual Studio Hub' 1-Stop-Shop for GitHub Copilot Resources, More

    Unsurprisingly, GitHub Copilot resources are front-and-center in Microsoft's new Visual Studio Hub, a one-stop-shop for all things concerning your favorite IDE.

  • Mastering Blazor Authentication and Authorization

    At the Visual Studio Live! @ Microsoft HQ developer conference set for August, Rockford Lhotka will explain the ins and outs of authentication across Blazor Server, WebAssembly, and .NET MAUI Hybrid apps, and show how to use identity and claims to customize application behavior through fine-grained authorization.

  • Linear Support Vector Regression from Scratch Using C# with Evolutionary Training

    Dr. James McCaffrey from Microsoft Research presents a complete end-to-end demonstration of the linear support vector regression (linear SVR) technique, where the goal is to predict a single numeric value. A linear SVR model uses an unusual error/loss function and cannot be trained using standard simple techniques, and so evolutionary optimization training is used.

  • Low-Code Report Says AI Will Enhance, Not Replace DIY Dev Tools

    Along with replacing software developers and possibly killing humanity, advanced AI is seen by many as a death knell for the do-it-yourself, low-code/no-code tooling industry, but a new report belies that notion.

Subscribe on YouTube