Mono brings Visual Basic programs to Linux
Feb 20, 2007 — by LinuxDevices Staff — from the LinuxDevices Archive — 5 viewsThe Mono Project on Feb. 20 announced that it has developed a Visual Basic compiler that will enable software developers who use Microsoft Visual Basic to run their applications on any platform that supports Mono, such as Linux, without any code modifications.
digg this story |
Though often disparaged by developers, Visual Basic remains one of the world's most commonly used programming languages. According to Forrester Research, 37 percent of enterprises use Microsoft Visual Basic.NET for development and maintenance of their in-house applications. What's more, among .NET developers, 59 percent use Visual Basic.NET as their only programming language. Thus, as of 2006, at least 20 percent of all in-house business programs were still being written in Basic, according to the market analyst firm.
Until now, Visual Basic applications could only run on Windows OSes, without major modifications. With the Mono Visual Basic compiler, however, those applications will be able to run on many more platforms. As a proof point of this new platform independence, the new compiler is self-hosting. That is, the complier itself is written in Visual Basic.
Novell Inc. sponsors Mono, which is an open-source development platform that aims to be compatible with Microsoft's .NET framework. Mono's goal is to enable developers to build Linux and cross-platform applications. Mono's .NET implementation is based on the ECMA standards for C# and the CLI (Common Language Infrastructure).
“From its inception, the Mono project has focused on creating a development framework that allows .NET software to run across all the leading server and client platforms” stated Miguel de Icaza, vice president of developer platforms at Novell and founder of the Mono project. “The delivery of the Visual Basic compiler is a key step forward in this process. Now, developers do not need any Linux expertise to create applications that will run easily on Linux.”
“The ability to write software that runs easily across multiple platforms has long been a holy grail for developers,” continued de Icaza. “The Mono Visual Basic compiler is a milestone step forward in this direction. Using the software skills they already know, developers can now reach a much broader audience, creating applications that run without modification on all the major operating system platforms.”
“The Run-time piece was in place last year,” de Icaza told Linux-Watch.com in an exclusive interview. “But it wasn't perfect and it was very buggy. So this was rewritten from scratch from Visual Basic by Mainsoft with some help from Microsoft.” Mainsoft specializes in porting programs written in Microsoft languages, such as ASP.NET and C#, to Linux, Unix, and J2EE (Java Enterprise Edition)-based platforms. Mainsoft has often worked closely with the Mono Project.
The compiler, according to de Icara, grew from an earlier, more primitive version of the compiler. “Some people took out .NET compiler and [modified] it to work with Visual Basic.”
During the Google 2006 Summer of Code, Raulf Jarve, a Norweigen student programmer who now lives in Spain, finished the compiler. “He turned it from a research [project into] a production compiler,” de Icara said. Since then, Novell has hired Jarve.
This new and improved compiler, which supports Visual Basic 8.0 code, is bundled in Mono 1.2.3. In addition to Visual Basic support, this version includes many bug fixes and an almost complete ASP.NET 2.0 API (application programming interface) implementation. WebParts, however, still isn't completely supported.
De Icaza also added that these improvements in Mono owe nothing to Microsoft and Novell's recent technical partnership. “The deal with Microsoft didn't help with this project. Microsoft and Novell are focusing, as they announced, on virtualization, directory services interoperability, document format interoperability, and cross server management.” de Icaza hopes, however, to get funding from the partnership for future advancements in Mono.
This article was originally published on LinuxDevices.com and has been donated to the open source community by QuinStreet Inc. Please visit LinuxToday.com for up-to-date news and articles about Linux and open source.