C# languageMono introduces a complete new language, called C#. It's very similiar to Java, but also has features from C++. |
using System;
class HelloWorld {
public static void Main() {
Console.WriteLine("Hello, World!");
}
}
|
VB languageThe Basic language hasn't really changed over the years. VisualBasic.NET however fixes many issues, Basic is now as powerful, as C# or other languages. Mono ships with a CIL compiler, making the language just as worthy as C#. Thanks to language-independence classes written in MonoBasic can be used in C# as well. The lack of a good supported Basic implementation on Unix has finally be fixed. |
Imports System
Module Test
Sub Main()
Console.WriteLine ("Hello World!")
End Sub
End Module
|
LOGO languageMono brings the LOGO language to the Gnome desktop (but also to Windows, MacOS, KDE). Like all mono languages it can make use of the class library, thus supporting Database and XML applications. |
Print "|Hello world!| |
GTK#With Ximian comming from a Gnome background, Mono has first class Gnome bindings. GTK+, but also Glade, gnome-db and GStreamer are supported. Those libraries are ported to most (if not all) Unixes, MacOS X and Windows and nicely integrate with the Gnome desktop. There is also on-going work to use native widgets on windows and MacOS X. Cross-platform is possible! |
|
QT#QT# has been started by the KDE community and provides a binding to the KDE developer libraries. The underlying libraries are available on Windows and MacOS X as well, but are only free on Unix. |
|
Also there is to mention the mono documentation browser.
II. Classes implemented
III. Classes not implemented
While mono tries to implement all classes, those are either not started or have not progressed enough.
IV. Mono's additional classes
While with about 3000 classes the .NET Framework is quite feature rich, there are serveral bits that are missing.
Mono tries to solve this, by introducing a new namespace, and offering the multiplatform GUI GTK+.
Compatiblity is kept, all classes are known to run with the MS implementation.
I. Extended .NET: The Mono.* namespace
II. Extended .NET: Multiplatform GUI through Gtk#
II. Differences on Unix/Windows/MacOS X
The mono classes don't need to be ported. However if the underlying library isn't available for a certain platform,
some classes might not work there.
A. Credits
Author: Johannes Roith (johannes@jroith.de)