RealTime IT News

Open Source Mono Gets Visual Basic

Mono has long tried to provide an open source alternative implementation of Microsoft's .Net framework. It has succeeded in some respects, and in others it has been lacking, especially when it come to Visual Basic.

That is no longer the case. As of Mono version 1.2.3, the Novell led project now includes new Visual Basic capabilities allowing development and deployment of Visual Basic for Mono on Linux platforms. The 1.2.3 release is the third point release in the 1.2.x series which was first released in November of 2006.

Miguel de Icaza, vice president of developer platforms at Novell and founder of the Mono project told internetnews.com that the project has been promising a Visual Basic compiler for a long time. The first attempts at providing the Visual Basic compiler were not very good according to de Icaza.

As part of last year's Google Summer of Code, the Mono Project brought on student Rolf Bjarne to build a Visual Basic 8.0 compiler. It is that fruits of that labor that are now in the Mono 1.2.3 codebase.

"What is important is that there are a large number of developers that use Visual Basic as their main language and though we could run their applications, they couldn't move their development to Linux," De Icaza explained. "They still need to use Visual Studio and then copy the executable to Linux , which isn't really a great development environment."

From a use case scenario, de Icaza noted that ASP.NET requires a compiler on the server machine to actually merge the asp.net page with a developer's code. As such, without a compiler developers were not able to run Visual Basic code on the server.

"So Visual Basic was working o.k. with Mono as long as you were building client applications," De Icaza said. "If you were trying to build server applications, there was no way you could do it.

"With this release we're enabling the deployment of server applications built with Visual Basic with Mono and the ability to completely develop applications in Visual Basic in Linux."

The November Microsoft Novell deal on patents and interoperability does not play into the new Visual Basic compiler support on Mono, according to de Icaza. In his view, compliers have been well understood for over 40 years and building a compiler is not anything new.

According to the release notes for Mono 1.2.3, the Visual Basic support is only a preview, but that fact shouldn't hold back use.

"We consider the compiler to be feature complete, but it doesn't mean that it's bug free," de Icaza said. "We're going to let people try it out and we'll fix bugs that are reported."

The compiler is not the only item that Novell has on its roadmap for fleshing out Visual Basic support on Mono. This week Novell will launch another tool to help facilitate Visual Basic development. "The compiler is not something the average Visual Basic developer would use, they'd use an IDE," de Icaza said. "So we're releasing MonoDevelop with updated support for the new VB compiler."

Support for the new VB compiler will land in version 0.1.3 of MonoDevelop, which is an open source IDE effort.

Overall, there is still lots to do for de Icaza and crew with Mono. The 1.2.3 version adds support for 1,933 missing methods thanks to a new tool called MoMA (Mono Migration Analyzer). MoMA lets a developer look at an existing .NET executable and determines all of the items that are necessary from .net in order to run.

"We're still missing about 6,000 methods so there is still a lot of work to do," de Icaza said.