{"id":6303,"date":"2007-04-19T19:20:00","date_gmt":"2007-04-19T19:20:00","guid":{"rendered":"https:\/\/blogs.msdn.microsoft.com\/vbteam\/2007\/04\/19\/visual-basic-orcas-beta1-is-in-the-wild-amanda-silver\/"},"modified":"2024-07-05T14:48:21","modified_gmt":"2024-07-05T21:48:21","slug":"visual-basic-orcas-beta1-is-in-the-wild-amanda-silver","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/vbteam\/visual-basic-orcas-beta1-is-in-the-wild-amanda-silver\/","title":{"rendered":"Visual Basic &#034;Orcas&#034; Beta1 is in the wild! (Amanda Silver)"},"content":{"rendered":"<p class=\"MsoNormal\"><font face=\"Calibri\" size=\"3\">Woohoo! Its <\/font><a href=\"http:\/\/blogs.msdn.com\/somasegar\/archive\/2007\/04\/19\/visual-studio-orcas-and-net-fx-3-5-beta1-shipped.aspx\"><font face=\"Calibri\" size=\"3\">official<\/font><\/a><font face=\"Calibri\" size=\"3\">, we finally got <\/font><a href=\"http:\/\/msdn2.microsoft.com\/en-us\/vstudio\/aa700831.aspx\"><font face=\"Calibri\" size=\"3\">Orcas Beta1<\/font><\/a><font size=\"3\"><font face=\"Calibri\"> out the door! We\u2019re very excited to get this release out to you so we can finally talk about some of the stuff we\u2019ve been working on in addition to the LINQ and XML feature-set. We believe that Orcas Beta1 displays all of the essential value in the Orcas product but it\u2019s important to keep in mind that it\u2019s not feature-complete. There are many features (for example: lambda expressions, support for nullable types, etc.) that will be coming online in a later milestone. <span>&nbsp;<\/span><\/font><\/font><\/p>\n<p class=\"MsoNormal\"><font face=\"Calibri\" size=\"3\">That said, back to Beta1! Recently, there\u2019s been a lot of discussion on this blog about the LINQ features, but I\u2019d like to take the time to discuss some of the language and compiler related features in Orcas Beta1 that will radically improve your productivity even if you don\u2019t give a <i>hoot<\/i> or <i>holler<\/i> about the revolution in programming that we fondly call LINQ.<\/font><\/p>\n<p class=\"MsoNormal\"><font face=\"Calibri\" size=\"3\">The first thing that\u2019s going to jazz you is <b><i>Intellisense Everywhere<\/i><\/b>. In short, this feature is about providing statement completion suggestions at new points in your editing experience. Some examples are best shown as screen shots:<\/font><\/p>\n<p class=\"MsoNormal\"><font face=\"Calibri\" size=\"3\">Expressions:<\/font><\/p>\n<p class=\"MsoNormal\"><font face=\"Calibri\" size=\"3\"><\/font><\/p>\n<p class=\"MsoNormal\"><font face=\"Calibri\" size=\"3\">&nbsp;<img decoding=\"async\" height=\"192\" src=\"https:\/\/devblogs.microsoft.com\/vbteam\/wp-content\/uploads\/sites\/7\/2007\/04\/Expressions.bmp\" width=\"479\"><\/font><\/p>\n<p class=\"MsoNormal\"><font face=\"Calibri\" size=\"3\">Keywords:<\/font><\/p>\n<p class=\"MsoNormal\"><img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/vbteam\/wp-content\/uploads\/sites\/7\/2007\/04\/KeyWords.bmp\"><\/p>\n<p class=\"MsoNormal\"><font face=\"Calibri\" size=\"3\"><\/font>&nbsp;<\/p>\n<p class=\"MsoNormal\"><font face=\"Calibri\" size=\"3\">Variable names:<\/font><\/p>\n<p class=\"MsoNormal\"><font face=\"Calibri\" size=\"3\">&nbsp;<img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/vbteam\/wp-content\/uploads\/sites\/7\/2007\/04\/VariableNames.bmp\"><\/font><\/p>\n<p class=\"MsoNormal\"><font face=\"Calibri\" size=\"3\">I\u2019ll save the rest so as not to steal the thunder from another blogger on our team\u2026. <\/font><\/p>\n<p class=\"MsoNormal\"><font face=\"Calibri\" size=\"3\">Another great feature that you\u2019ll notice in Beta1 is <b><i>Relaxed Delegates<\/i><\/b>. In short, relaxed delegates are a way to extend VB\u2019s implicit conversions to delegate types. With relaxed delegates, you can write the following code:<\/font><\/p>\n<p class=\"MsoNormal\"><font face=\"Calibri\" size=\"3\">&nbsp;<\/font><\/p>\n<p class=\"MsoNormal\"><span>Private<\/span><span> <span>Sub<\/span> Button1_Click(<span>ByVal<\/span> sender <span>As<\/span> <span>Object<\/span>, <span>ByVal<\/span> e <span>As<\/span> EventArgs) _<\/span><\/p>\n<p class=\"MsoNormal\"><span><span>&nbsp; <\/span>Handles<\/span><span> Button1.Click, Button1.MouseClick<\/span><\/p>\n<p class=\"MsoNormal\"><span><span>&nbsp;&nbsp;&nbsp; <\/span>MsgBox(<span>&#8220;Do Something&#8221;<\/span>)<\/span><\/p>\n<p class=\"MsoNormal\"><span>End<\/span><span> <span>Sub<\/span><\/span><\/p>\n<p class=\"MsoNormal\"><font face=\"Calibri\" size=\"3\">&nbsp;<\/font><\/p>\n<p class=\"MsoNormal\"><font face=\"Calibri\" size=\"3\">You can even omit *all* of the event arguments if your method body doesn\u2019t need them. This improves readability without compromising type safety:<\/font><\/p>\n<p class=\"MsoNormal\"><font face=\"Calibri\" size=\"3\">&nbsp;<\/font><\/p>\n<p class=\"MsoNormal\"><span>Option<\/span><span> <span>Strict<\/span> <span>On<\/span><\/span><\/p>\n<p class=\"MsoNormal\"><span>Public<\/span><span> <span>Class<\/span> Form1<\/span><\/p>\n<p class=\"MsoNormal\"><span><span>&nbsp; <\/span><span>Private<\/span> <span>Sub<\/span> Button1_Click() <span>Handles<\/span> Button1.Click, Button1.MouseClick<\/span><\/p>\n<p class=\"MsoNormal\"><span><span>&nbsp;&nbsp;&nbsp; <\/span>MsgBox(<span>&#8220;Do Something&#8221;<\/span>)<\/span><\/p>\n<p class=\"MsoNormal\"><span><span>&nbsp; <\/span><span>End<\/span> <span>Sub<\/span><\/span><\/p>\n<p class=\"MsoNormal\"><span>End<\/span><span> <span>Class<\/span><\/span><\/p>\n<p class=\"MsoNormal\"><font face=\"Calibri\" size=\"3\">&nbsp;<\/font><\/p>\n<p class=\"MsoNormal\"><font size=\"3\"><font face=\"Calibri\">Lastly, <strong><em>Multi-Targeting<\/em><\/strong> enables you to use Orcas Beta1 to write applications that target .NET 2.0, 3.0, or 3.5. This has been a long requested feature that is now in your hands. The idea is that by supporting multi-targeting, it\u2019s a no-brainer to go out and pick up Orcas because it doesn\u2019t necessarily require that you deploy a new runtime if you don\u2019t use the features of .NET 3.5 \u2013 just your app. You can see this by going to File<\/font><span><span>\u00e0<\/span><\/span><font face=\"Calibri\">New Project and changing the option in the dialog:<\/font><\/font><\/p>\n<p class=\"MsoNormal\"><img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/vbteam\/wp-content\/uploads\/sites\/7\/2007\/04\/Multitarget.bmp\"><\/p>\n<p class=\"MsoNormal\"><font face=\"Calibri\" size=\"3\">Hope these features find you well! <\/font><a href=\"http:\/\/msdn2.microsoft.com\/en-us\/vstudio\/aa700831.aspx\"><font face=\"Calibri\" size=\"3\">Download the Beta<\/font><\/a><font face=\"Calibri\" size=\"3\"> and tell us what you think!<\/font><\/p>\n<p class=\"MsoNormal\"><font face=\"Calibri\" size=\"3\">&nbsp;<\/font><\/p>\n<p><a href=\"https:\/\/msdnshared.blob.core.windows.net\/media\/MSDNBlogsFS\/prod.evol.blogs.msdn.com\/CommunityServer.Components.PostAttachments\/00\/02\/19\/87\/95\/VariableNames.bmp\">VariableNames.bmp<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Woohoo! Its official, we finally got Orcas Beta1 out the door! We\u2019re very excited to get this release out to you so we can finally talk about some of the stuff we\u2019ve been working on in addition to the LINQ and XML feature-set. We believe that Orcas Beta1 displays all of the essential value in [&hellip;]<\/p>\n","protected":false},"author":260,"featured_media":8818,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[192,195],"tags":[28,74,94,117,164],"class_list":["post-6303","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-featured","category-visual-basic","tag-amanda-silver","tag-ide","tag-linqvb9","tag-orcas","tag-vb_express"],"acf":[],"blog_post_summary":"<p>Woohoo! Its official, we finally got Orcas Beta1 out the door! We\u2019re very excited to get this release out to you so we can finally talk about some of the stuff we\u2019ve been working on in addition to the LINQ and XML feature-set. We believe that Orcas Beta1 displays all of the essential value in [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/vbteam\/wp-json\/wp\/v2\/posts\/6303","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/vbteam\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/vbteam\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/vbteam\/wp-json\/wp\/v2\/users\/260"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/vbteam\/wp-json\/wp\/v2\/comments?post=6303"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/vbteam\/wp-json\/wp\/v2\/posts\/6303\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/vbteam\/wp-json\/wp\/v2\/media\/8818"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/vbteam\/wp-json\/wp\/v2\/media?parent=6303"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/vbteam\/wp-json\/wp\/v2\/categories?post=6303"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/vbteam\/wp-json\/wp\/v2\/tags?post=6303"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}