Mono linguaggio di programmazione | |
---|---|
Autore | Xamarin |
Data di origine | 30 giugno 2004 |
Ultima versione | 5.0.1 |
Utilizzo | linguaggio general-purpose |
Paradigmi | programmazione a oggetti |
Tipizzazione | forte |
Estensioni comuni | .exe |
Influenzato da | .NET |
Implementazione di riferimento | |
Implementazione | linguaggio interpretato |
Sistema operativo | multipiattaforma |
Licenza | licenza MIT, BSD 3-clausole e licenza Apache 2.0 |
Sito web | www.mono-project.com/ |
Mono è un progetto open source coordinato da .NET Foundation[1] (precedentemente da Xamarin, Novell e in origine da Ximian) per creare un insieme di strumenti compatibili con il Framework .NET, secondo gli standard ECMA (Ecma-334 e Ecma-335).
I più importanti di questi strumenti sono il compilatore C# e il Common Language Runtime.
Mono è compatibile con i seguenti sistemi operativi[2]:
Mentre Microsoft ha reso disponibile una versione di .NET per FreeBSD chiamata la Shared source CLI, la licenza di Microsoft non è di software libero e può essere insufficiente per i bisogni degli utenti (in particolare, proibisce esplicitamente l'utilizzo commerciale). Per questo ed anche per limitare la diffusione di C# e le relative librerie Mono nell'ambiente Linux è stato creato il linguaggio Vala.
La macchina virtuale di Mono contiene un motore JIT per vari processori: x86, SPARC, PowerPC, ARM, s390 (in modalità a 32 bit) e x86-64 e SPARC a 64 bit. La VM può eseguire una compilazione just-in-time o può pre-compilare il codice in codice nativo. Per altre architetture hardware esiste solo un interprete.
Un progetto simile è DotGNU Portable.NET.