Hlavní navigace

Nové události spojené s Monem

6. 9. 2006 10:46 yakeen

Framework Mono asi představovat nemusím. Někým zatracovaný, někým milovaný. Inu každému podle jeho gusta. Pro ty, které tato technologie zajímá, zde budu občas uvádět některé novinky, které se týkají nejen Mono frameworku, ale třeba i Gtk+, Gnome, aj.
Dnes je tu první várka…


Dnes byla uvolněna finální verze 1.0 projektu IronPython sponzorovaného Microsoftem. Binárky projektu jsou volně k použití, zdrojové kódy jsou uvolněny pod speciální volnější shared source code licencí, která dovoluje i další distribuci odvozeného kódu. Release Candidate 1 byl bez problémů provozován pod Mono frameworkem, předpokládám tedy, že by i tato verze měla bez problémů fungovat.


Ve spolupráci s Googlem (Summer of Code) byl vytvořen nový překladač pro Visual Basic 9, tedy nejnovější verze včetně podpory generik. Zajímavostí je, že překladač je napsán sám ve VB9. Dnes byly odstraněny poslední chyby v Mono runtime a VB knihovnách a překladač je schopen přeložit sám sebe i na Linuxu. Ti zvědavější mohou nahlédnout do zdrojáků zde.


Dnes se očekává vydání další verze vývojového prostředí MonoDevelop 0.12. I když ještě nebyly vydány balíčky, v repozitáři je vše připraveno a už teď se můžete podívat co nás čeká. Ve zkratce: byla přidána podpora jazyka C# 2.0, vylepšeno doplňování kódu, podpora jiných kódování zdrojových souborů než jen UTF-8, nový AutoTools Deployment addin včetně podpory pkg-configu, nový ASP.Net addin + experimentální ASP.Net grafický editor, menu a toolbar editor pro Gtk grafický editor založený na Action API
a mnoho dalších drobných vylepšení a oprav.


Martin Baulig tento týden commitnul patch pro C# 2.0 gmcs kompilátor řešící kuriozní situaci kolem generik. Po aplikaci tohoto patche (popřípadě si počkejte na další vydání Mona) budete moci korektně zkompilovat anonymní metody uvnitř třídy pracující s generickými typy.
Ukázkový příklad problému:

   delegate void Foo ();
   class X
{
static void Hello<U> (U u) {}
static void Test<T> (T t) { Foo foo = delegate { Hello (t); }; }
}

Jak sám autor komentoval v C# 2.0 je tato notace spíše vyjímka, ale tento patch je důležitý pro budoucí práci na kompilátoru C# 3.0 který bude umožňovat používat lambda funkce.


A na závěr taková perlička, zkuste si napsat svůj vlastní filesystem pomocí Mona, Jonathan Pryor uvolnil další testovací verzi Mono.Fuse, binding pro libfuse.
Podrobnější informace na jeho blogu.