Mono 2.10
Dynamische Anwendungen in Googles Native Client
Mit der Version 2.10 kann Monos virtuelle Maschine, der Garbage Collector, sowie dessen JIT-Kompilierer in Googles Native Client verwendet werden. Das in der aktuellen Version implementierte Backend des C#-Kompilierers verwendet das Mono-eigene IKVM-API, eine JavaVM für .Net.

Mono 2.10 bringt eine Reihe grundlegender Änderungen an dem freien Nachbau der .Net-Umgebung, darunter die erweiterte Unterstützung für Googles Native Client. Mono-Anwendungen konnten in den vom Native Client bereitgestellten Sandboxes über eine eigene Runtime samt Garbage Collection ausgeführt werden. Dank des verwendeten JIT-Kompilierers müssen Mono-Anwendungen jetzt nicht mehr statisch kompiliert werden. Die Mono-Entwickler versprechen sich von der Unterstützung des Native Client mehr Sicherheit, da die Laufzeitumgebung über eine eingebaute Verifizierung nur bestimmte Code-Muster akzeptiert. Zudem erhalten damit Mono-Anwendungen vollen Zugriff auf die CPU. Dabei werden sowohl x86- als auch ARM-Prozessoren unterstützt.
Ferner haben die Entwickler Mono 2.10 mit einer weiteren Version des C#-Compiler-Backends ausgestattet, das auf die APIs der Klassenbibliothek IKVM.Reflection statt wie bisher auf die in System.Reflection.Emit zugreift. Die Compiler-Variante wird mit dem Befehl mcs gestartet. IKVM.Reflection implementiert eine Java Virtual Machine in .Net und Mono. Künftig soll IKVM.Reflection, der Nachfolger von IKVM.Reflection.Emit, System.Reflection gänzlich ersetzen.
Der überarbeitete VB-Compiler wurde ebenfalls angepasst und kann über einen einzigen Compiler Code für die verschiedenen Versionen der Visual Basic Runtimes übersetzen. Dazu verwendet Mono 2.10 Mono.Cecil - auch bekannt als cecil/light - statt wie bisher die entsprechende Reflection-API. Der Befehl vbnc verwendet das Profil für Visual Basic 4.0, während vbnc2 das Profil für Version 2.0 verwendet.
Um Asp.Net MVC 3 mit Mono zu verwenden, haben die Entwickler das freie Framework mit zahlreichen Patches versehen. Zwar hat Microsoft den MVC3-Stack unter der MS-PL-Lizenz freigegeben, der Stack benötigt aber einige Bibliotheken, die nicht quelloffen sind. Wer reines Mono für MVC3-Seiten verwenden will, muss zuvor die Bibliothek Microsoft.Web.Infrastructure.dll entfernen.
Ab Version 2.10 enthält das Mono-Framework Kompilierer für F# und Ironruby in den Linux- und Mac-OS-X-Versionen. Später soll eine angepasste Version für Ironpython hinzukommen.
Die Entwickler bezeichnen Mono 2.10 trotz seiner Versionsnummer und der zahlreichen Änderungen als Zwischenversion auf dem Weg zur finalen Version 3.0, die dann auch länger mit Updates versorgt werden soll als die Version 2.10. Wer jetzt eine auf längere Zeit unterstützte Version von Mono einsetzen will, soll den Entwicklern zufolge weiterhin auf Version 2.6.7 zurückgreifen. Mono 2.10 steht auf der Webseite des Projekts im Quellcode sowie als Binärpaket für Windows, Mac OS X, Solaris und verschiedene Linux-Distributionen zum Download zur Verfügung, darunter Opensuse, Red Hat und CentOS.
Hi Naja, wenn man das annimmt hat man zu 99% recht. Das Visual Studio Plugin ist im...