Focusing on open APIs for enterprise applications

Open Web Magazine

Subscribe to Open Web Magazine: eMailAlertsEmail Alerts newslettersWeekly Newsletters
Get Open Web Magazine: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn

Open Web Authors: Jayaram Krishnaswamy, Bob Gourley, Kevin Benedict, Pat Romanski, Newswire

Related Topics: Open Web Magazine

Open Web: Article

Mainsoft Donates Visual Basic Run Time Code to Open Source

DotGNU starts a new project, Mono sets roadmap to 1.0.

It was a busy month for everybody. DotGNU starts a new project, Mono gets more code from Mainsoft, and Microsoft releases Wix, an installer program, under open source license. Mono sets dates for two betas and a release of version 1.0

Mono Sets Dates for Version 1.0
Mono has set May 4 for Mono 1.0 beta 1, June 1 for beta 2, and June 30 for the release of version 1.0. Keep in mind that like all software schedules, this one is likely to slip a bit. But, I am going to an Independence Day party on July 2, and hope to have copies of "Independence from Microsoft" day Mono CDs to hand out. Version 1.0 will have packages for, at least, SUSE SLES 8, SUSE 9 and 9.1, Red Hat 9, Fedora Core 1 and 2, Mac OS X 10.3, and Windows 2000/XP. Included will be the runtime, C# compiler, ASP.NET, ADO.NET, Web services, console applications, debugger, GTK# graphics, libgdiplus, MonoDevelop, and, possibly with the help of the Mainsoft code dicussed below, the VB runtime library. Included only in experimental form will be System.Windows.Forms, the mbas compiler, and C# 2.0 features such as generics.

DotGNU Starts New Project
Rhys announced that he was taking a "sabbatical" during April, but when he emerged, it turned out he was working on a new project, "libjit." libjit provides an API for compiler writers who pass the library-parsed intermediate code in a "three address form" (one that has no more than three addresses per line), and outputs native code. Currently, x86 and ARM processors are supported. Since this is a tool for compiler writers, and not a compiler, front-end parsers will not be a major focus of the project. Details are at u/libjit.html.

Visual Basic Runtime
Last month I mentioned that Mainsoft, a maker of tools for running Windows software on UNIX systems, had done a lot of work on ADO.NET, ASP.NET, and Web services for Mono. As soon as I had sent that column to my editor, I received an e-mail from Miguel saying that Mainsoft had donated a Java implementation of the Microsoft.VisualBasic library to the open source community. The Mono team, including myself (I have been very active in this), is now back-porting the code to C# for use in Mono. A lot of the code (70%) is translating easily and should be complete by the time you read this; we should also have a lot of the harder parts done, but some of the more difficult parts (last 10%) may take quite a while. It should be noted here that where a function in Mono is complete and correct, we use the original Mono code, not the converted Mainsoft code. We never do the merge in a way that would cause Mono developers to lose credit for the work that they have already done.

Microsoft has made major waves in the press by releasing Wix, an open source installation program. This is a true open source project, released under the Common Public License, and hosted on SourceForge. Wix is a set of tools for converting an XML description of an install into an MSI or MSM install module. It also includes a decompiler that takes an MSI file and converts it back into an XML file. I have downloaded the project, and look forward to checking it out. If I get a chance, I will report back with what I find. The code can be downloaded from Click Here !, and there is a blog written by Rob Memsching, one of the Microsoft programmers who works on the project. He describes how the project got started, how it became open source, and notes that many Microsoft groups, including the Office and SQL server groups, use this software to create their MSI files.

A group of students from the University of West Bohemia, Plzen, Czech Republic have created a set of C# bindings for VTK (visualization tool kit), the bindings are at The home page for VTK is at The demos must be seen to be believed; they include the Visual Human and Virtual Creatures. VTK uses OpenGL as its rendering engine, so they have also written a set of OpenGl bindings for C# at Milan Frank wrote his thesis on the VTK software on .NET; it covers a lot of interesting topics in an easily read manner

Finally, keep an eye on Miguel's blog at; there is usually something interesting there.

More Stories By 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.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.