4 <a href="http://www.ximian.com">Ximian</a> announced the
5 launch of the Mono project, an effort to create an Open Source
6 implementation of the .NET Development Framework.
8 Mono includes: <a href="c-sharp.html">a compiler</a> for the
9 C# language, a <a href="runtime.html">runtime</a> for the
10 Common Language Infrastructure and a set of <a
11 href="class-library.html">class libraries</a>.
13 You can read our <a href="rationale.html">rationale</a> for
14 this project. If you have questions about the project, please
15 read our list of <a href="faq.html">Frequently Asked
16 Questions</a> or <a href="mailto:mono-list@ximian.com">contact us.</a>
18 You might also want to <a href="download.html">Download the
19 source</a> for our work so far. Or you can grab a <a
20 href="snapshots">snapshot</a> of our current work.
23 href="resources.html#mailing">subscribe</a> to our mono-list
24 and mono-announce-list
26 You can contact the team at: <a
27 href="mailto:mono-list@ximian.com">mono-list@ximian.com</a>
30 <table border=1 bgcolor>
35 <b><a href="c-sharp.html">Compiler</a></b>
38 Self hosting on .NET.<br>
39 Classes need work to run on Mono.
56 In progress: StrongARM, SPARC.
61 <b><a href="class-status.html">Classes</a></b>
64 Corlib for self hosting mostly done
74 <b>Mono 0.9 has been released!</b>
76 A new version of the runtime, compiler and class libraries has
77 been packaged for your download pleasure. The <a
78 href="archive/mono-0.9">Release Notes</a>
81 href="download.html#feb-22">Here</a> (quick links: <a
82 href="archive/mono-0.9.tar.gz">runtime</a> and <a
83 href="archive/mcs-0.9.tar.gz">compiler/classes</a>).
87 Paolo got our compiler natively to compile 117 of our tests.
88 Self hosting is closer every day.
90 Unsafe support is finished in the C# compiler.
94 Gaurav got DataGrid and DataGridItemCollection done.
96 C# compiler: Unsafe support is mostly complete (only stackalloc is missing).
98 New easy to run scripts for compiling Mono on Unix and Windows
99 is <a href="download.html">available</a>. We can now easily compile
100 Mono on Windows and Linux. If you had trouble before, use the
101 above scripts which will get the setup right for you.
103 There are now three machines that can provide AnonCVS, just
104 use anoncvs.go-mono.com as the hostname for your CVSROOT and
105 you will get one of the machines.
109 Do you want to see what <a href="http://people.debian.org/~lupus/mono/">Mono Looks Like?</a>
113 Application Domains now support the two LoaderOptimization
114 modes: share code or do not share code, and you can control
115 this with the --share-code command line option.
117 Paolo has now 100+ test cases run on Linux now with our class
120 PowerPC and SPARC ports are moving along (Radek and Jeff)
124 Excellent news since the 11th, here is a quick rundown:
126 AppDomains have been deployed (Dietmar). Socket work is done
127 (Dick). Corlib compiled with no refs to mscorlib (Dan). New
128 comprehensive tests for colib bits (David). Nick is driving the
129 regression test suite efforts and class library completeness.
130 New System.Data work (Chris). Bug fixes (Paolo, Duncan, Ravi, Miguel)
132 Miguel is off to the <a
133 href="http://www.fosdem.org">FOSDEM</a> conference in Brussels.
137 <b>Mono 0.8 has been released!</b>
139 A new version of the runtime, compiler and class libraries has
140 been packaged for your download pleasure.
143 href="download.html#feb-11">Here</a> (quick links: <a
144 href="archive/mono-0.8.tar.gz">runtime</a> and <a
145 href="archive/mcs-0.8.tar.gz">compiler/classes</a>)
149 We would like to welcome all the new developers that have
150 joined the project in the last couple of days. The classes
153 An explanation of the relationship between <a
154 href="http://mail.gnome.org/archives/gnome-hackers/2002-February/msg00031.html">GNOME
157 Nick is still leading our test suite platform. I can not
158 stress how important it is to have a good regression test suite
159 for our platform, as buggy class libraries are what are
160 stopping the compiler from running completely on Linux.
162 We are of course psyched to see Mono run on
163 non-Linux systems. Work is moving on native code generation
164 for StrongARM, PowerPC, and SPARC as well as porting Mono to
167 There are a couple of debates on the Mono list on implementing
168 a set of web server classes for <a
169 href="http://lists.ximian.com/archives/public/mono-list/2002-February/002911.html">enabling
173 href="http://lists.ximian.com/archives/public/mono-list/2002-February/002944.html">
174 posted a list of pending tasks</a> to enable the compiler to run on Linux
178 Mike Kestner has posted an <a
179 href="http://lists.ximian.com/archives/public/gtk-sharp-list/2002-February/000024.html">Update
180 on his Gtk#</a> activities.
185 href="http://lists.ximian.com/archives/public/mono-list/2002-February/002808.html">Qt
186 bindings</a> for .NET. Adam is cool.
190 Dan Lewis has contributed a major missing set of classes to
192 href="http://lists.ximian.com/archives/public/mono-list/2002-January/002745.html">
193 System.Text.RegularExpressions</a>.
195 This is a fully .NET compatible implementation of the .NET regular expressions,
196 fully Unicode aware. This contribution is very appreciated, as implementing this
197 was not entirely trivial (supporting Unicode, plus a regex engine which is a super
198 set of the Perl regex engine).
202 The Mono contributors have relicensed the Class Libraries under
204 <a href="http://www.opensource.org/licenses/mit-license.html">MIT X11</a> license.
206 This license is an Open Source license, and is used by other projects
207 (most notably, the XFree86 project).
209 The runtime (JIT, metadata library, interpreter) remains under
210 the LGPL and the C# compiler remains under the GPL.
213 href="http://www.ximian.com/about_us/press_center/press_releases/mono_partners.html">Press
217 href="http://news.com.com/2100-1001-823734.html">CNet</a>, <a
218 href="http://www.wired.com/news/technology/0,1282,50037-2,00.html">Wired</a>,
219 <a href="http://www.infoworld.com/articles/hn/xml/02/01/28/020128hnopennet.xml">InfoWorld</a>,
220 <a href="http://www.newsforge.com/article.pl?sid=02/01/27/2232231">NewsForge</a>.
224 New mailing list: <a href="mailto:mono-patches-request@ximian.com">mono-patches@ximian.com</a>.
225 This mailing list will receive automatically the patches that are submitted
226 to the Mono CVS to any of its modules.
228 This allows anyone who wants to participate in the peer-review of the
229 code submitted to CVS to receive patches on e-mail. It should also
230 expose to everyone the changes that are being done by the team every day.
234 Dick has got a simple web server running with Mono (`MIS: Mono
235 Internet Server') that is mostly used to test our IO layer, a
236 <a href="http://primates.ximian.com/~miguel/dick-mis-server.png">screenshot</a>
238 Paolo and Dietmar are busy making our runtime self sufficient on
239 non-Windows platforms.
241 C# compiler front: A lot of focus in the past weeks after
242 the C# became self hosting has been in making the compiler a useful
243 tool for development: improve error handling, provide better error
244 reports, fixing all known bugs, and finally profiling of the compiler
249 Our compiler has been self-supporting since January 3rd. In
250 the meantime, we have been busy working on making it run on
251 Linux. Today Paolo got more work done on Reflection.Emit and
252 the compiler compiled `console.cs' (a sample Mono program) on
257 Dietmar landed the Unicode support patch. Class libraries and
258 runtimes are now fully Unicode aware. The details are <a href=
259 "http://lists.ximian.com/archives/public/mono-list/2002-January/002409.html">
262 Last minute breaking news: Paolo got our compiler in Linux to
263 compile fib.cs, patches are comming tomorrow once we have
268 Mike Kestner posted an update on Gtk# <a
269 href="http://lists.ximian.com/archives/public/gtk-sharp-list/2002-January/000021.html"><i>New
270 year, new direction</i></a>.
272 Gtk# will be our foundation on which we will be implementing
273 System.Windows.Forms.
277 Mono C# compiler becomes self-sufficient. We can now continue
278 development of the compiler with itself.
280 Work on the class libraries is still underway for having a full
281 self hosting system. We hope to achieve our goal of self-hosting
282 on Linux before the end of the month.
284 Join the fun by downloading either tonight's <a
285 href="snapshots">snapshot</a> or getting your sources from our
286 <a href="anoncvs.html">Anonymous CVS server</a>.
290 After a lot of work, the C# compiler can compile itself.
291 There are still errors in the generated image, but they are
294 We will soon have the first non-Microsoft C# implementation!
298 JIT: More work on our IO abstraction layer (Dick).
300 JIT: exception handling for unmanaged code (Dietmar)
302 System.Reflection: Support for PropertyInfo and
303 PropertyBuilder as well as the various queries for MethodBase.
305 C#: Pre-processor; Rewrite of MemberLookup which fixed many of
306 the outstanding issues. More bug fixing allows it to compile
311 Dietmar has improved the register allocation and now Mono performs
312 two to three times as fast as it did yesterday. Amazing.
314 The compiler keeps moving along, explicit interface
315 implementation is there.
319 The JIT engine can now run all the compiler regression tests as
320 well as assorted other programs, many more opcodes added
321 recently. Currently the JIT engine uses a very simplistic register
322 allocator (just enough to allow us to focus on feature completeness)
323 and that will be the next major task to improve performance and
324 reduce spills and reloads.
326 On the C# compiler front: language features are now pretty
327 much complete. The big missing tasks are unsafe code support,
328 visibility, explicit interface implementation plus static flow
329 analysis. There are many small bugs that need to be addressed.
331 You can get your copy of the <a href="snapshots">latest Mono</a>
333 More work is also required on fixing the foundation class
334 libraries, it is easy to find spots now since Nick got the
339 AnonCVS access to Mono is here (updated every hour). Thanks
340 to <a href="http://www.hispalinux.es">HispaLinux</a> and Jesus
341 Climent for helping to set this up.
345 All tests from the mono runtime work with the JIT engine now
348 Recursive enumeration definition in the C# compiler are
351 More work on the Web classes (Gaurav).
355 JIT land: Paolo got GDB support into the JIT engine while
356 Dietmar added exceptions support to it.
358 The C# compiler supports all array initializations now, and the
359 switch statement as well as fixing many existing bugs. Many
362 Nick keeps working on improving our class library test suite.
364 Dick has almost completed the Mono IO layer.
369 Mike Kestner has posted an <a
370 href="http://lists.ximian.com/archives/public/gtk-sharp-list/2001-November/000015.html">update</a>
377 Paolo today got the Mono C# compiler running <a
378 href="http://lists.ximian.com/archives/public/mono-list/2001-November/001941.html">on
379 Linux</a>. It compiles a sample program and then the sample
382 Mutator unary operators (++ and --) in the compiler are fully
383 functional, they used to only work on variables, and now they
386 To sum things up: The Mono C# compiler is written in C# and
387 uses the .NET classes to get its work done. To make this work
388 on Linux work has to happen in various fronts:
390 * The C# compiler is being worked on and can compile
391 many programs now (our test suite at this point is
392 made up of 40 tests).
394 * The class libraries need to be mature enough to support
395 the compiler, particularly System.Reflection.Emit (which is
396 what Paolo has been working on lately).
398 The compiler currently requires 103 classes from the
399 .NET runtime (you can get the list by running: <b>monodis --typeref mcs.exe</b>
401 * The interpreter should be mature enough to run the actual
402 compiler byte codes and the corlib bytecodes.
405 At the same time, Dietmar is working on the JIT engine which will
406 replace our interpreter in production.
412 Dietmar got value types working on the JIT engine. Sean has
413 got assembly loading in the runtime (required for NUnit).
415 More progress on enumerations and attributes from Ravi.
417 Nick keeps working on improving our class libraries.
423 Enumerations, array access and attributes for the C# compiler are into the CVS now.
425 Full array support is not complete, but moving along.
431 Dietmar's new set of patches to the JIT have 20 out of 33
438 Mike Kestner, main Gtk# contributor has posted a very interesting <a
439 href="http://lists.ximian.com/archives/public/gtk-sharp-list/2001-November/000013.html">
440 update</a> on his work on Gtk#.
442 Ravi commited the initial support for Attributes in the
445 Many HTML Controls from Leen checked into CVS.
447 Paolo checked in his new System.Reflection and
448 System.Reflection.Emit implementations. He has been working
449 steadily on this huge task for a few weeks now. This is the
450 foundation for the Mono C# compiler, and hence a very
451 important piece of the puzzle.
457 Many clean ups have been going into the class library by Nick Drochak.
459 Mega patch from Dietmar: he commited the flow analysis code
462 A lot of work has been going into the WebControls by Gaurav (4
463 new controls plus improved and bug fixed base classes).
469 Ravi commited the caller-side method selection of methods with
470 variable length arguments. Now he depends on Miguel finishing
471 the array handling support.
477 Lots of classes for System.Web from Gaurav were commited this
480 Some large recent developments:
482 The Decimal implementation from Martin Weindel has been
483 partially integrated (we need to put the internalcalls in
484 place now and compile and link the decimal code).
486 Derek Holden commited recently the IntegerFormatter code into
487 the CVS, so we got a pretty comprehensive integer formatting
488 engine that we can finally use all over the place.
490 Compiler got support for lock as well as assorted bug fixes.
491 Ravi is still working on array support (and then we can
492 optimize foreach for the array case).
494 Dietmar is busy working on flow analysis on the JITer, the
495 previous mechanism of generating the forest was wrong. Paolo
496 has been a busy bee reworking the System.Reflection.Emit
497 support code, and we should have some pretty nice stuff next
498 week. Dick on the other hand is still working on the
499 WaitOne/WaitAll emulation code. WaitAll is like select on
500 steroids: it can wait for different kinds of objects: files,
501 mutexes, events and a couple of others.
503 Mike Kestner is busy working on Gtk# which is now using the
504 .defs files to quickly wrap the API.
510 Reworking expressions to support cleanly indexers and
511 properties. <a href="http://www.nat.org/evolution.php3">11
512 days</a> until Evolution 1.0 ships.
514 Ximian users around the world <!--a
515 href="http://www.bez.it/IMAGES/nora.jpg"-->rejoice<!--/a--> with
516 recent C# compiler progress.
522 Delegate support has been checked into the compiler
523 (definition and invocation); break/continue implemented.
529 JIT engine supports many of the object constructs now (object
530 creation, vtable setup, interface table setup).
532 The C# compiler now has almost full property support (only
533 missing bit are pre-post increment/decrement operations),
534 delegates are now created (still missing delegate invocation).
535 try/catch/finally is also supported in the compiler now.
537 System.Decimal implementation is in, as well as many crypto
544 Sergey has released his first version of the <b>ilasm</b>
545 assembler written in C#. You can get it from his web page:
547 href="http://mono.eurosoft.od.ua">http://mono.eurosoft.od.ua</a>.
549 The plan is to integrate ildasm into the Mono CVS soon. This
550 component should in theory also be reusable for SharpDevelop
557 Our System.Reflection.Emit implementation created its first
558 executable today. This means that a very simple .NET program
559 that was compiled on Windows was able to generate a .NET program
560 while running on Linux using the Mono runtime.
562 The various piece of the puzzle are starting to get together:
563 the compiler can compile simple programs now and we are
564 basically focusing on completeness now.
571 href="http://www.icsharpcode.net/OpenSource/SD/default.asp">Sharp
572 Develop 0.80</a> was released today.
578 More progress: more opcodes are working (Paolo); The compiler
579 runs up to a point in Mint (Paolo); operator overloading works
580 (both unary and binary) all over the place (Miguel); Completed decimal
581 type conversions (Miguel); New build system in place based on
582 Ant (Sean and Sergey); Refactored and documented the
583 internals of the JIT engine (Dietmar); StatementExpressions
584 handled correctly (Miguel).
590 A couple of news-worthy items: Dick got the initial thread
591 support into mint; Paolo implemented many new opcodes; Dietmar
592 got long operations and mul/div working on the JITer; Ravi rewrote
593 the Method selector for expressions to be conformant; Miguel
594 got i++ working. All in tonight's snapshot
600 Paolo has written a section on <a href="porting.html">Porting
601 Mono</a> to othre architectures.
607 <A a href="download.html#sep-18">Mono 0.7</a> has been
608 released (runtime engine, class libraries
609 and C# compiler). Check the <a href="archive/mono-0.7">Mono
610 0.7 announcement</a> for details
616 Mike Kestner's Gtk# (Gtk-sharp) was checked into the CVS
617 repository. Gtk# can run a simple hello world application.
618 The binding is nice, as it maps Gtk+ signals to delegates in
619 C#. You can see the Gtk# Hello World program <a href="src/HelloWorld.cs">here</a>
621 Gtk-sharp should be available on the next snapshot set.
627 Dietmar checked in his CIL tree/forest regeneration and most
628 importantly, the x86 instruction selector burg grammar.
635 The MCS compiler <b>can compile the sample Hello World</b>
636 application and generate a Windows/CIL executable that runs!
638 This executable runs with the Mono Interpreter of course (see
645 Dietmar checked into CVS the `monoburg' architecture
646 independent instruction selector for the JIT engine.
652 <b>.NET Hello World is working under Mono!</b> The latest snapshots
655 Hello World consits of 1821 CIL instructions,
656 performs 66 subroutine calls and loads 12 classes from the corlib.dll
664 Lloyd Dupont has announced his OpenGL bindings for C#, they
665 are available here: <a
666 href="http://csgl.sourceforge.net">http://csgl.sourceforge.net</a>
672 New version of the Mono Runtime, Compiler and Classes has been
674 href="download.html#august-22">released.</a> Check the <a
675 href="archive/mono-0.6">0.6 announcement</a>.
681 A new <a href="contributing.html#compile-service">Compilation
682 service</a> has been made available by Derek to allow people
683 without access to the <a
684 href="http://msdn.microsoft.com/downloads/default.asp?url=/downloads/sample.asp?url=/msdn-files/027/000/976/msdncompositedoc.xml&frame=true">.NET SDK</a>
690 Daily snapshots of mcs and mono are now available, they will
691 run every night at 10pm Boston time.
697 Mono Runtime 0.5 has been <a
698 href="download.html#july-29">released.</a> Check the <a
699 href="archive/mono-0.5">release notes</a>
705 The slides for <A href="Presentations/O-Reilly">my
706 presentation</a> at <a href="http://www.oreilly.com">O'Reilly
707 Open Source Software Convention</a>
713 Another release of the class libraries is out, check the <a
714 href="archive/mcs-22">MCS 22-July Release Notes</a>. You can
715 get the new class libraries from <a
716 href="download.html#july-22">here</a>
722 Another release of the class libraries is out, check the <a
723 href="archive/mcs-19">MCS 19-July Release Notes</a>. You can
724 get the new class libraries from <a
725 href="download.html#july-19">here</a>
731 Another release of the class libraries is out, check the <a
732 href="archive/mcs-17">MCS 17-July Release Notes</a>. You can
733 get the new class libraries from <a
734 href="download.html#july-17">here</a>
736 Do not forget to check out the updated <a href="faq.html">FAQ</a>.
738 Got Sean's new <a href="class-status/index.html">Class
739 Status</a> web pages up. These are a lot better than mine, and
740 we are now keeping better track of contributors.
746 Another release of Mono is out, check the <a
747 href="archive/mono-0.4">Mono 0.4 Release Notes</a>. Get it <a
748 href="download.html#july-15">here</a>.
755 href="http://lists.ximian.com/archives/public/mono-list/2001-July/000399.html">new
757 runtime, compiler and classes has been made. Get it <a href="download.html#july-14">here</a>
763 I keep getting questions about my opinion on Passport, even when
764 Mono has <b>nothing</b> to do with it. I finally <a
765 href="passport.html">wrote something.</a>
777 Brian posted a story on <a
778 href="http://www.oreillynet.com/dotnet">O'Reilly Network .NET</a>