News

Microsoft: 'We Do Not Plan to Evolve Visual Basic as a Language'

In its move to the open-source, cross-platform .NET Core, Microsoft will support Visual Basic in the upcoming .NET 5 and is expanding the programming language's supported application types to help VB developers migrate their code, but noted "we do not plan to evolve Visual Basic as a language."

The expanded project types to foster a move to the new framework were in response to customer feedback, said Microsoft, which noted advantages of the language such as stability.

"We've heard your feedback that you want Visual Basic on .NET Core," said the .NET team in a March 11 blog post titled "Visual Basic support planned for .NET 5.0."

The expansion of supported project types will help VB coders move their existing applications to .NET Core/.NET 5 and leverage cross-platform functionality and features such as better performance, side-by-side deployment, and new API improvements.

The .NET Core evolution is currently at version 3.1, with the unifying .NET 5 planned for November. Microsoft announced that with .NET 5, VB's supported project types will increase beyond Class Library and Console applications to also support:

  • Windows Forms
  • WPF
  • Worker Service
  • ASP.NET Core Web API

However, it was the warnings about future support and evolution of the language that caught the attention of multiple developers who commented on the post, which garnered an unusually high number of comments (39 and counting steadily at press time).

"Going forward, we do not plan to evolve Visual Basic as a language," the .NET team said. "This supports language stability and maintains compatibility between the .NET Core and .NET Framework versions of Visual Basic. Future features of .NET Core that require language changes may not be supported in Visual Basic. Due to differences in the platform, there will be some differences between Visual Basic on .NET Framework and .NET Core."

Microsoft also noted that a VB app migration to .NET Core isn't necessarily in the plans for all developers, as it works fine with the Windows-only .NET Framework, which will be supported as long as Windows is.

"If your application uses technologies that aren't supported on .NET Core, like WebForms, Workflow or WCF, you might want to stay on .NET Framework because porting will require work to move to newer technologies" the post said.

That aforementioned developer feedback in the post's comments section ranged from praise for VB to confusion about what the announcement means. One developer said:

It's not April 1st is it?
This post basically breaks Microsoft's promises in Kathleen Dollard's post barely four months ago:
https://devblogs.microsoft.com/vbteam/visual-basic-in-net-core-3-0/

In that post (actually published Nov. 12, 2018, but updated Oct. 8, 2019), Dollard explained Microsoft's "Visual Basic in .NET Core 3" strategy and quoted parts of Microsoft's .NET Languages Strategy guidance such as:

  • "We will do everything necessary to keep it a first class citizen of the .NET ecosystem."
  • "We will keep Visual Basic straightforward and approachable."
  • "We will keep a focus on the cross-language tooling experience, recognizing that many VB developers also use C#."
  • "We will focus innovation on the core scenarios and domains where VB is popular."

It wasn't clear what promises in that post were allegedly broken with this week's news as claimed in the reader comment, but it nevertheless added to the confusion and uncertainty among some developers about VB. For example, one developer commented:

I did not clearly understand the post.
From one side it said that is stable and use by many developers and will be supported in .net core
But from other side said that
"Going forward, we do not plan to evolve Visual Basic as a language."

Can anyone in simple words explain if we can continue feel comfortable with VB.NET ?

Shall we forget and start turning to c#?

The .NET team didn't seem to think so, ending its announcement with: "Visual Basic is a great language and a productive development environment. The future of Visual Basic will include both .NET Framework and .NET Core and will focus on stability, the application types listed above, and compatibility between the .NET Core and .NET Framework versions of Visual Basic."

About the Author

David Ramel is an editor and writer at Converge 360.

comments powered by Disqus

Featured

  • Creating Business Applications Using Blazor

    Expert Blazor programmer Michael Washington' will present an upcoming developer education session on building high-performance business applications using Blazor, focusing on core concepts, integration with .NET, and best practices for development.

  • GitHub Celebrates Microsoft's 50th by 'Vibe Coding with Copilot'

    GitHub chose Microsoft's 50th anniversary to highlight a bevy of Copilot enhancements that further the practice of "vibe coding," where AI does all the drudgery according to human supervision.

  • AI Coding Assistants Encroach on Copilot's Special GitHub Relationship

    Microsoft had a great thing going when it had GitHub Copilot all to itself in Visual Studio and Visual Studio Code thanks to its ownership of GitHub, but that's eroding.

  • VS Code v1.99 Is All About Copilot Chat AI, Including Agent Mode

    Agent Mode provides an autonomous editing experience where Copilot plans and executes tasks to fulfill requests. It determines relevant files, applies code changes, suggests terminal commands, and iterates to resolve issues, all while keeping users in control to review and confirm actions.

  • 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.

Subscribe on YouTube