Mono recently gained a couple of new corporate sponsors, so this is a good
time to look at some of the project's commercial connections. The Mono
implementation of SWF (System.Windows.Forms) continues to improve, and the
Portable.NET implementation of SWF is taking off. On June 2 the DotGNU
project announced that the combined projects under its umbrella pnet,
pnetlib, pnetC, treecc, and cscctest had broken the three-quarters of a
millionline mark with a total of 771,186 lines of code. Congratulations, DotGNU!
And Now a Word from Our Sponsors...
The Mono project was started by Ximian, a for-profit company that sells
products for Linux. Although their main goal is to create a better
programming environment, they also plan to make money on services,
alternative licensees, and development projects.
The recent contract between Ximian and SourceGear is an example of a
sponsored development project. SourceGear makes Vault, a version-control
system that competes directly with Visual SourceSafe from Microsoft. They
want to use .NET, but need their client to work on Unix and Linux also, so
they have contracted with Ximian to hire another programmer to work on the
Mono implementation of remoting(SOAP). The command-line version runs on the
just-released version 0.25 of Mono.
OpenLink, maker of Virtuoso, a virtual database, has had programmers working on SWF and System.Drawing since about the beginning of the year. This was highlighted by the April release of Virtuoso 3.0, which uses Mono for Linux support. Their work with SWF
has resulted in a special version of Wine that works with Mono. We hope to clean up the changes and eventually fold them back into the main Wine code base. The special version can be downloaded from www.openlinksw.com/mono.
Portable.NET Starts SWF
The Portable.NET group at DotGNU has made a roaring start on SWF.
Portable.NET is basing their implementation on XWindows and System.Drawing
instead of Wine; they have gotten off to a fast start, already displaying a
form that includes a graph with mouseovers. For a screen shot of the
application go to www.gnu.org/projects/dotgnu/screenshot3.html or for the
same application running on a Mac, go to
www.gnu.org/projects/dotgnu/screenshot5.html. Another Mac application,
showing some different controls, is at
www.gnu.org/projects/dotgnu/screenshot4.html (see Figure 1). To see this
application running on an iPAQ, go to http://dotgnu.org/screenshots/7.png.
Mono is basing their SWF and System.Drawing on either Winelib or GTK#
(set at compile time). The Winelib approach has a lot of problems, but is
expected to give a deeper level of compatibility with Windows applications.
This also makes SWF on Mono dependent on Winelib for portability; currently,
Winelib support for non-x86 processors is sketchy (the GTK# version should
run on Macs, but is well behind the Wine version in functionality).
New Release of Portable.NET
Version 0.58 of Portable.NET includes a version of Basic, Java, and
XSharp (an XML processing language) in addition to a number of enhancements
and fixes. It also includes the first release of a package of class
libraries shared with Mono. These include data providers for MySQL,
PostgreSQL, DB2, and Oracle, as well as classes for POSIX, SOAP, and
EnterpriseServices. The release will include the new SWF implementation
discussed earlier plus all the enhancements planned for SWF in the next two
months. The .6 version of Portable.NET is expected to be released about the
time you read this; it will be bundled as part of a major DotGNU 0.1
release.
Mono is in the final stages of releasing version 0.25, which will
include an improved XmlSerializer (most required features are complete),
IKVM.NET (runs out of the box; supports the IBM Eclipse IDE with the add-on
package at www.nexus.hu/vargaz), SOAP/remoting (supports command-line version of Vault), System.Security
.Cryptography (expected to be signature compatible (all interface details
match) with .NET version 1.1).
About The Author
Dennis Hayes is a senior software engineer at Raytek Corporation in Santa Cruz, CA, where he writes process control software. He has been involved with the Mono Project for over a year, and is in charge of the System.Windows.Forms and System.Drawing namespaces.
dennish@raytek.com
All Rights Reserved
Copyright © 2004 SYS-CON Media, Inc.
E-mail:
info@sys-con.com