Read Digital Edition


ADS BY GOOGLE
Top Three Links You Must Click On


A Short History of Basic on Mono
Mono gets new VB compiler and runtime

The highlight of this release is the new MonoBASIC compiler and runtime. The availability of BASIC on Mono has waxed and waned over the years. During the early days of Mono, BASIC received little or no attention. The biggest reason was that all the effort was going into the C # compiler. In addition, the early Mono adopters were not very interested in VB; in fact at the time, there was much debate in the VB community in general about upgrading to VB.NET because of the complexity of VB.NET, and the lack of backwards compatibility with VB6. Also, unlike C# which was released as a ECMA and ISO standard, VB.NET was, and still is, a proprietary product with no publicly available definition (that has the details needed by a compiler writer).

As time went on and more programmers joined Mono, several people started to work on a VB.NET compatible compiler based on a fork of the C# compiler. Also, work began on the Microsoft.VisualBasic and Microsoft.VisualBasic.CompilerServices namespaces.

BASIC on Mono received a big break in 2004 when Mainsoft donated a complete copy of the VB.NET runtime libraries written in Java (see DNDJ Vol. 2 Iss. 6). A group of Mono developers, including myself, converted the libraries into C#.

As more people began to use Mono as a Web server, BASIC, and the BASIC compiler became more important because of the large number of Web pages being written in VB. Because they were compiled on the fly, they could not be compiled using the Microsoft compiler, and then executed under Linux like applications could. At this point, Novell put a group of programmers on the MonoBASIC compiler project, and for a while, good progress was made. With the release of .NET and ASP.NET 2.0, ahead of time compilation of VB code became possible; BASIC for Mono was sent to the back burner, and the coders working on MonoBASIC were set to work on System.Windows.Forms, which is needed for the Mono 1.2 release.

Now, Mainsoft has made another major contribution to Mono by donating a set of VB.NET runtime libraries (written by Rafael Mizrahi and Boris Kitzner) written in BASIC with two test suits: one to test low level functions that is written in C#, and one to test high level functions that is written in BASIC.

Combined with the new VB9 compatible MonoBASIC compiler written by Rolf Bjarne as part of the Goggle Summer of Code, which can now compile itself, Mono is close to having a full VB.NET compatible stack. Currently the new BASIC runtime is being distributed with the standard Mono package, but since the new VB 2005 compatible compiler is just at the point of compiling itself, it is being distributed in a separate package until it matures a bit more.

Other Additions to Version 1.1.17
The big news in System.Windows.Forms (SWF) is support for printing; this was one of the last major parts of SWF still not implemented. The key to implementing printing was upgrading to the new version (1.2) of Cairo.

COM is now beginning to be supported with the addition of Runtime Callable Wrappers (RCWs), which allow managed code to call unmanaged components.

The Postgress database classes have been updated to support Postgress Release Candidate 3. IronPython 1.0 RC2 is now supported, System.IO.Ports includes much more functionality, and the registry code has been updated to support the .NET 2.0 API. There were also a number of significant improvements made throughout Mono. The complete lists can be found at www.go-mono.com/archive/1.1.17/ and www.go-mono.com/archive/1.1.17.1/ Odds and Ends There will be a meeting of the Mono developers on October 23rd and 24th in Cambridge Ma. See www.go-mono.com/meeting/ for details. It is open to all, so drop in if you can make it.

There is a new way to test drive Mono, along with SUSE Enterprise Edition version 10.0; VMWare has a free virtual OS "player" that you install as an application. The application can then play a "disc" containing any operating system created by the "full" version of VMWare. Novell has released a "disc" that can be played by the VMWare "player" which contains the full version of SUSE, including Mono and many applications, both native and Mono based.

The second Goggle Summer of Code has been completed. Portable.NET had a student who mostly completed his task of porting Libjit to the Alpha processor. There have been a number of other improvements in Libjit since the last release.MonoDevelop, the .NET integrated development environment for .NET on Linux has released version 1.2. This IDE is really maturing, so I will cover this release in more detail next month, but in the mean time, you can read the release notes and see some screen shots at www.monodevelop.com/Release_notes_for_MonoDevelop_0.12.

Now that Callisto, the simultaneous release of 10 projects related to the Eclipse IDE, has been released, plans are being made for next year's release, tentatively dubbed Europa

About Dennis Hayes
Dennis Hayes is a programmer at Georgia Tech in Atlanta Georgia where he writes software for the Adult Cognition Lab in the Psychology Department. He has been involved with the Mono project for over six years, and has been writing the Monkey Business column for over five years.

In order to post a comment you need to be registered and logged in.

Register | Sign-in

Reader Feedback: Page 1 of 1

  Subscribe to our RSS feeds now and receive the next article instantly!
In It? Reprint It! Contact advertising(at)sys-con.com to order your reprints!
Subscribe to the World's Most Powerful Newsletters

ADS BY GOOGLE
There's a lot of talk about how we need to focus on our buyers' issues and provide them educational ...
SugarCRM, the world’s leading provider of open source customer relationship management (CRM) softwa...
This past weekend I set out explore some of the extension capabilities of Google Wave. One of the we...
More good news for cloud computing! Google last week released its once mysterious Chrome Operating S...
In CloudBerry Lab we are striving to make our customer service better. In this competitive market wi...
We talk a lot about social media on Marketing Trenches. And for good reason – Social media seems to...
Intel has put out its promised beta SDK for Windows (C and C++) and Moblin (C) developers working on...
InformationWeek stumbled on a Microsoft patent application dating back to 2006 deceptively titled “M...
Berlin-based ThinPrint AG, the printer virtualization house, thinks it’s got a cloud solution for th...
Behaving like it’s got a future, Sun Monday put out what it calls a significant new version of Virtu...
IBM has acquired Guardium, a seven-year-old subsidiary of Israel’s Log-On Software transplanted to M...
But on the web, access to services is implicit in the fact that the business is offering the service...
Oracle has offered to cordon off MySQL inside a combined Oracle-Sun to get the European Commission t...
The second set of charges filed last week against Indian outsourcer Satyam Computer Services founder...
Gartner told Reuters that it overestimated how many PCs Acer shipped in the last seven quarters by a...
Office Web Apps, Microsoft’s answer to Google Apps, are supposed to be out sometime in June along wi...
Gartner thinks the server business has stopped sliding into the abyss. Third-quarter sales weren’t a...
Gartner is buying ~$40 million-a-year AMR Research Inc for close to $64 million in cash. AMD special...
Singed by user reaction to its plans to up the price of its support contracts, SAP Tuesday postponed...
Apparently Google Gears ain’t gonna stick around that long. Google Apps will eventually get their of...