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

  • Full-Stack with a Side of Copilot: Building and Deploying an App the AI-Accelerated Way

    In this Q&A, developer and VSLive! speaker Esteban Garcia explains how GitHub Copilot can accelerate the full software development lifecycle -- from architecture and code to tests, CI/CD, and Azure deployment -- and how to use it as a repeatable engineering workflow rather than just a faster autocomplete tool.

  • VS Code 1.127 Further Integrates Advanced Browser-AI Tech

    Microsoft's July 1 Visual Studio Code update continues a recent push to make the editor's integrated browser a more capable development surface -- and a more useful tool for AI agents.

  • Support Vector Regression with SGD Training Using C#

    Support vector regression can predict numeric values effectively, and this article shows how to implement and train a kernel SVR model in C# using stochastic sub-gradient descent.

  • New GitHub Switch Limits Repo Issue Creation to Collaborators Only

    After publicly touting pull request limits as a way to cut maintainer noise, GitHub is taking the same idea further with a new setting that lets repository admins restrict issue creation to collaborators only.

Subscribe on YouTube