Mono is an open source implementation of the controversial .NET programming language and software framework developed by Microsoft for developers who wish to create applications for the Microsoft Windows operating system. The main difference between .NET and Mono, is that the latter allows you to create applications that also run on GNU/Linux systems.

Sponsored by Novell

Sponsored by Novell, the Mono project allows Linux developers to build rich applications that are cross-platform, compatible with GNU/Linux, Microsoft Windows and Mac OS X operating systems, with unprecedented productivity. It is based on the ECMA standards for the Common Language Runtime and C# compiler.

Provides language interoperability

The software comprises of a large class library that is popularly known as FCL (Framework Class Library), which provides language interoperability across various programming languages. It also provides network communications, web application development, numeric algorithms, user interface, database connectivity, data access and cryptography.

Supported on major GNU/Linux platforms

Being a quite popular programming language, and because there are several important Linux applications written in Mono, such as the Banshee music player and organizer, the project is supported on major GNU/Linux platforms, including Arch Linux, Debian, CentOS, Ubuntu, openSUSE and Gentoo.

Cross-platform, open source .NET framework

Despite the fact that it is a Linux implementation of the .NET programming language, Mono is cross-platform and open source, supported on mainstream operating systems like Microsoft Windows and Mac OS X, not only on GNU/Linux.

Availability, development and supported architectures

On GNU/Linux, the Mono project is primary distributed as a source archive, which will require users to manually configure and compile the software prior to installation. Happily, you will be able to install the latest version of Mono from the default software repositories of numerous distributions (listed above). Both 64-bit and 32-bit architectures are supported at this time.

.NET implementation UNIX .NET implementation Programming language .NET Programming Development Develop