Showing posts with label VBx. Show all posts
Showing posts with label VBx. Show all posts

Wednesday, May 02, 2007

MIX07 Session Videos with LINQ, Entity Framework, or VB[x] Hooks

MIX07 session videos have been unlocked, so you can select them from the MIX07 RSS feed. Click the feed's video item header to open the MIX07 Sessions page with the video selected in the list at the bottom. Press return with the sessions code in the Search box or double-click the list item to stream to Silverlight or download Zune or WMV versions.

Here's the link to "Jim and John Talk", which originally was named Just Glue It! Dynamic Languages in "WPF/E", disappeared from the session list, and then was announced as a stealth session:

DEV02 - Just Glue It! Ruby and the DLR in Silverlight

Speakers: Jim Hugunin, John Lam Abstract: The web was built using dynamic languages. Their plain-text format made it easy to mash up scripts to create the next great app. Similarly, dynamic languages will find a home in Silverlight applications where plain-text formats are common. Silverlight can be easily deployed, which means that a wider range of dynamic languages will be used in building browser-hosted applications. In this demo-centric talk, you will see this happen before your eyes as we rapidly create an application by combining code and markup from existing samples in Ruby, Python, JavaScript, and Visual Basic. This unprecedented level of integration is possible since all of these languages are implemented on top of the new Dynamic Language Runtime (DLR).

Jim and John spent most of their session on a Mac demonstrating Silverlight apps that combine the four DLR languages: Ruby, Python, JavaScript, and VB.

Following are three screen captures from the session:

VBx code for a LINQ query against Technorati search results for "silverlight"

Ruby code that calls JavaScript and the preceding VBx code.

Performance comparison of Python and IronPython

Following are the other three videos with LINQ content that were available as of May 2, 2007 at 12:00 PM PST.

DEV22 - Building Silverlight Applications Using .NET (Part 1 of 2)

Speaker: Jamie Cool Abstract: This session demonstrates building a rich interactive application (RIA) using Silverlight. We cover how to use Microsoft Visual Studio to create applications, how to create UI using XAML markup and code, how to build a custom control, how to retrieve data from a Web service, and how to manipulate data with XML and LINQ. (This is the first in a two-part series.)

DEV07 - Building Silverlight Applications Using .NET (Part 2 of 2)

Speakers: Jamie Cool, Nick Kramer Abstract: This session demonstrates building a rich interactive application (RIA) using Silverlight. We cover how to use Microsoft Visual Studio to create applications, how to create UI using XAML markup and code, how to build a custom control, how to retrieve data from a Web service, and how to manipulate data with XML and LINQ. (This is the second in a two-part series.)

Anders gave a preview of the LinqDataSource control for ASP.NET (based on LINQ to SQL) that's expected to arrive with Orcas Beta 2 in this session:

DEV04 - Using LINQ to Dramatically Improve Data Driven Development in Web Applications

Speaker: Anders Hejlsberg Abstract: Modern applications operate on data in several different forms: Relational tables, XML documents, and in-memory objects. Each of these domains have profound differences in semantics, data types, and capabilities, and much of the complexity in today's applications is the result of these mismatches. Anders Hejlsberg, Microsoft Technical Fellow and Chief Architect for Microsoft Visual C# and LINQ, will explain how LINQ (Language Integrated Query) unifies these programming models and dramatically improves the experience of creating data intensive Web applications. Anders promises to have few slides and lots of live code demos!

Update 5/5/2007: Jon Udell delivers a glowing review of Anders' session and LINQ technology in his May 1, 2007 Watching Anders Hejlsberg reinvent the relationship between programs and data post.

Following are a few screen shots of Anders' demo of the LinqDataSource control for ASP.NET 2.0:

Selecting a LinqDataSource Control from the Toolbox

Selecting the DataContext Object for the Database in the Choose Context Object Dialog

Selecting the Entity in the Configure Data Select Dialog

Connecting the ASP.NET DataGrid to the LinqDataSource Control

Enabling DataGrid Paging, Sorting, Editing, Deleting, and Selection

The LINQ-based GridView Open in IE7

Mike Champion, who's on his way from being the LINQ to XML honcho to Microsoft's WS-Deathstar team, has a review of Anders' and other MIX07 sessions at Accelerating Evolution: LINQ News from Mix 2007, which concludes:

It's interesting watching various pundits and analysts read the tea leaves of the numerous LINQ subprojects, Silverlight versions, and incubation projects such as Volta to figure out the "Microsoft" master plan for pulling it all together. Just as customer pain with today's technology drives diverse innovation across the industry, so it does within Microsoft, and the process resembles evolution in action more than intelligent design by a supreme architect. I don't think we're seeing a silly season so much as a Cambrian explosion of new ideas from all sorts of places, and Father Darwin alone knows how it will end up.

I'll update this page as the MIX07 team makes new LINQ, Entity Framework and VB-related videos available.

Tuesday, May 01, 2007

The Visual Basic Language on Silverlight

The terms "Visual Basic," "VB," and "Dynamic VB" have popped up repeatedly in interviews and MIX07 sessions about the Dynamic Language Runtime (DLR). I suggested in my Stealth Dynamic Languages Presentation at MIX07 post that VB for the DLR would be VBScript or a related dialect.

The VB Team posted a VB On Silverlight item this afternoon, which describes (in considerable detail) the features of the VB language supported in Silverlight 1.1 Alpha. Here's an overview that confirms that "VB Lite" or whatever supports LINQ:

When deciding what aspects of the Visual Basic language and runtime should be included with Silverlight v1.1, we tried to follow a similar pattern: we wanted to preserve the core VB programming experience—late binding, conversions, Linq [sic], and so on; and we didn’t want to bloat the download size with anything that wasn’t absolutely necessary or didn’t make sense in Silverlight—things like some of the COM helpers (COM is not supported in Silverlight), financial functions, etc. It was a delicate balance to strike between functionality and overall size.

The current size of the Silverlight 1.1 runtime's .NET Framework is 4.2 MB.

Note: LINQ to XML for Silverlight is scheduled for inclusion post Alpha 1.

The Silverlight 1.1 Runtime download lets you write VB code-behind. The VB team says "It includes a version of the factored .NET Framework, including the VB runtime (Microsoft.VisualBasic.dll)." You'll also need Orcas Beta 1 and the VS Add-On for Silverlight, which includes project templates and IDE changes for building Silverlight applications in VB (and C#).

The Silverlight SDK delivers reference documentation for the VB runtime. According to the post, "[i]t basically details [the] functions and types in Microsoft.VisualBasic.dll."

The Silverlight 1.1 VB implementation Isn't VBx

The Microsoft Silverlight Developer Reference poster has a reference to Visual Basic and VBx under the Languages heading, with VBx carrying a Soon flag which the legend translates to "Post Silverlight 1.1 Alpha."

Paul Vick's What the heck is "VBx"? post describes a cross-platform, hostable version of VB that delivers scripting capabilities similar to VBScript and VBA:

Well, as I've been hinting at for a while now, there's been something I've been working on quite a lot in recent months that I couldn't talk about. With our announcements at MIX07, though, I can now take a bit of the wraps off. "VBx" is our current (subject to change) codename for the next major version of Visual Basic. (The "x" is supposed to signify the Roman numeral X, or 10, since the next major version of Visual Basic is going to be 10.0. The "x" really should be capitalized, but some people were worried there'd be confusion with the old VBX controls. Not that the search engines are really going to draw a distinction. Like VB itself, they're mostly case insensitive.)

Paul continues:

As excited as we are about VBx, it is, unfortunately, not part of the Silverlight 1.1alpha1 released yesterday. Although we have a significant amount of functionality already implemented there is still more work to be done to bring the VBx language support up to the level that we feel is necessary for a productive community preview. Our plans are to have a community preview out later this year, and to talk much more detail about VBx at PDC07.

VBx is the Next Version of Visual Basic

Paul Vick asks the question: After MIX, how many Visual Basic languages are there?

He answers it with "One. Just one. VBx is the next version of Visual Basic, not a new version of Visual Basic." And then he goes on to explain:

What John and Jim demoed [in their Tuesday session], and what the DLR enables, however, is a second scenario. Because the DLR is managed code, it can be run directly on Silverlight. This means that you can actually get a running instance of a DLR language within Silverlight itself. So instead of having to compile an application or library before you can use it in Silverlight, you can simply include the code as a part of the Silverlight application, and the code can be compiled by the DLR language on the fly. This enables the traditional style of client-side applications that you see in AJAX or other libraries. Instead of compiling the library ahead of time, you simply download the client code to the browser when it hits the page, and the code will be compiled and run within the browser in real time.

Will VBx be the Next Version of VBA?

Paul Vick's vision of VBx as "a hostable managed component (written in Visual Basic, no less!) built on top of the DLR" indicates to me that VBx could be Microsoft Office's Holy Grail--a drop-in replacement for VBA in Office 14 and beyond that could run on the PC and Mac. Comments anyone?

Stay tuned to the VB Team, Paul's Panopticon Central and this blog for more details on Visual Basic 10.0.

Technorati tags: , , , , ,