Ximian announced the
launch of the Mono project, an effort to create an Open Source
implementation of the .NET Development Framework.
Mono includes: a compiler for the
C# language, a runtime for the
Common Language Infrastructure and a set of class libraries.
You can read our rationale for
this project. If you have questions about the project, please
read our list of Frequently Asked
Questions or contact us.
You might also want to Download the
source for our work so far. Or you can grab a snapshot of our current work.
You might want to subscribe to our mono-list
and mono-announce-list
You can contact the team at: mono-list@ximian.com
** Dec 1, 2001
AnonCVS access to Mono is here (updated every hour). Thanks
to HispaLinux and Jesus
Climent for helping to set this up.
** Nov 30, 2001
All tests from the mono runtime work with the JIT engine now
(Dietmar).
Recursive enumeration definition in the C# compiler are
working now (Ravi).
More work on the Web classes (Gaurav).
** Nov 28, 2001
JIT land: Paolo got GDB support into the JIT engine while
Dietmar added exceptions support to it.
The C# compiler supports all array initializations now, and the
switch statement as well as fixing many existing bugs. Many
new more tests.
Nick keeps working on improving our class library test suite.
Dick has almost completed the Mono IO layer.
** Nov 16, 2001
Mike Kestner has posted an update
on Gtk# development.
** Nov 14, 2001
Paolo today got the Mono C# compiler running on
Linux. It compiles a sample program and then the sample
program is executed.
Mutator unary operators (++ and --) in the compiler are fully
functional, they used to only work on variables, and now they
are complete.
To sum things up: The Mono C# compiler is written in C# and
uses the .NET classes to get its work done. To make this work
on Linux work has to happen in various fronts:
* The C# compiler is being worked on and can compile
many programs now (our test suite at this point is
made up of 40 tests).
* The class libraries need to be mature enough to support
the compiler, particularly System.Reflection.Emit (which is
what Paolo has been working on lately).
The compiler currently requires 103 classes from the
.NET runtime (you can get the list by running: monodis --typeref mcs.exe
* The interpreter should be mature enough to run the actual
compiler byte codes and the corlib bytecodes.
At the same time, Dietmar is working on the JIT engine which will
replace our interpreter in production.
** Nov 12, 2001
Dietmar got value types working on the JIT engine. Sean has
got assembly loading in the runtime (required for NUnit).
More progress on enumerations and attributes from Ravi.
Nick keeps working on improving our class libraries.
** Nov 8, 2001
Enumerations, array access and attributes for the C# compiler are into the CVS now.
Full array support is not complete, but moving along.
** Nov 5, 2001
Dietmar's new set of patches to the JIT have 20 out of 33
tests running now.
** Nov 4, 2001
Mike Kestner, main Gtk# contributor has posted a very interesting
update on his work on Gtk#.
Ravi commited the initial support for Attributes in the
compiler.
Many HTML Controls from Leen checked into CVS.
Paolo checked in his new System.Reflection and
System.Reflection.Emit implementations. He has been working
steadily on this huge task for a few weeks now. This is the
foundation for the Mono C# compiler, and hence a very
important piece of the puzzle.
** Nov 3, 2001
Many clean ups have been going into the class library by Nick Drochak.
Mega patch from Dietmar: he commited the flow analysis code
for the JITer.
A lot of work has been going into the WebControls by Gaurav (4
new controls plus improved and bug fixed base classes).
** Nov 1, 2001
Ravi commited the caller-side method selection of methods with
variable length arguments. Now he depends on Miguel finishing
the array handling support.
** Oct 27, 2001
Lots of classes for System.Web from Gaurav were commited this
morning.
Some large recent developments:
The Decimal implementation from Martin Weindel has been
partially integrated (we need to put the internalcalls in
place now and compile and link the decimal code).
Derek Holden commited recently the IntegerFormatter code into
the CVS, so we got a pretty comprehensive integer formatting
engine that we can finally use all over the place.
Compiler got support for lock as well as assorted bug fixes.
Ravi is still working on array support (and then we can
optimize foreach for the array case).
Dietmar is busy working on flow analysis on the JITer, the
previous mechanism of generating the forest was wrong. Paolo
has been a busy bee reworking the System.Reflection.Emit
support code, and we should have some pretty nice stuff next
week. Dick on the other hand is still working on the
WaitOne/WaitAll emulation code. WaitAll is like select on
steroids: it can wait for different kinds of objects: files,
mutexes, events and a couple of others.
Mike Kestner is busy working on Gtk# which is now using the
.defs files to quickly wrap the API.
** Oct 18, 2001
Reworking expressions to support cleanly indexers and
properties. 11
days until Evolution 1.0 ships.
Ximian users around the world rejoice with
recent C# compiler progress.
** Oct 17, 2001
Delegate support has been checked into the compiler
(definition and invocation); break/continue implemented.
** Oct 15, 2001
JIT engine supports many of the object constructs now (object
creation, vtable setup, interface table setup).
The C# compiler now has almost full property support (only
missing bit are pre-post increment/decrement operations),
delegates are now created (still missing delegate invocation).
try/catch/finally is also supported in the compiler now.
System.Decimal implementation is in, as well as many crypto
classes.
** Oct 5, 2001
Sergey has released his first version of the ilasm
assembler written in C#. You can get it from his web page:
http://mono.eurosoft.od.ua.
The plan is to integrate ildasm into the Mono CVS soon. This
component should in theory also be reusable for SharpDevelop
eventually.
** Oct 4, 2001
Our System.Reflection.Emit implementation created its first
executable today. This means that a very simple .NET program
that was compiled on Windows was able to generate a .NET program
while running on Linux using the Mono runtime.
The various piece of the puzzle are starting to get together:
the compiler can compile simple programs now and we are
basically focusing on completeness now.
** Sep 28, 2001
Sharp
Develop 0.80 was released today.
** Sep 26, 2001
More progress: more opcodes are working (Paolo); The compiler
runs up to a point in Mint (Paolo); operator overloading works
(both unary and binary) all over the place (Miguel); Completed decimal
type conversions (Miguel); New build system in place based on
Ant (Sean and Sergey); Refactored and documented the
internals of the JIT engine (Dietmar); StatementExpressions
handled correctly (Miguel).
** Sep 21, 2001
A couple of news-worthy items: Dick got the initial thread
support into mint; Paolo implemented many new opcodes; Dietmar
got long operations and mul/div working on the JITer; Ravi rewrote
the Method selector for expressions to be conformant; Miguel
got i++ working. All in tonight's snapshot
** Sep 19, 2001
Paolo has written a section on Porting
Mono to othre architectures.
** Sep 18, 2001
Mono 0.7 has been
released (runtime engine, class libraries
and C# compiler). Check the Mono
0.7 announcement for details
** Sep 17, 2001
Mike Kestner's Gtk# (Gtk-sharp) was checked into the CVS
repository. Gtk# can run a simple hello world application.
The binding is nice, as it maps Gtk+ signals to delegates in
C#. You can see the Gtk# Hello World program here
Gtk-sharp should be available on the next snapshot set.
** Sep 10, 2001
Dietmar checked in his CIL tree/forest regeneration and most
importantly, the x86 instruction selector burg grammar.
** Sep 5, 2001
The MCS compiler can compile the sample Hello World
application and generate a Windows/CIL executable that runs!
This executable runs with the Mono Interpreter of course (see
August 28)
** Sep 4, 2001
Dietmar checked into CVS the `monoburg' architecture
independent instruction selector for the JIT engine.
** Aug 28, 2001
.NET Hello World is working under Mono! The latest snapshots
will let you run it.
Hello World consits of 1821 CIL instructions,
performs 66 subroutine calls and loads 12 classes from the corlib.dll
Good work Mono team!
** Aug 23, 2001
Lloyd Dupont has announced his OpenGL bindings for C#, they
are available here: http://csgl.sourceforge.net
** Aug 22, 2001
New version of the Mono Runtime, Compiler and Classes has been
released. Check the 0.6 announcement.
** Aug 20, 2001
A new Compilation
service has been made available by Derek to allow people
without access to the .NET SDK
** Aug 3, 2001
Daily snapshots of mcs and mono are now available, they will
run every night at 10pm Boston time.
** Jul 29, 2001
Mono Runtime 0.5 has been released. Check the release notes
** Jul 25, 2001
The slides for my
presentation at O'Reilly
Open Source Software Convention
** Jul 22, 2001
Another release of the class libraries is out, check the MCS 22-July Release Notes. You can
get the new class libraries from here
** Jul 19, 2001
Another release of the class libraries is out, check the MCS 19-July Release Notes. You can
get the new class libraries from here
** Jul 17, 2001
Another release of the class libraries is out, check the MCS 17-July Release Notes. You can
get the new class libraries from here
Do not forget to check out the updated FAQ.
Got Sean's new Class
Status web pages up. These are a lot better than mine, and
we are now keeping better track of contributors.
** Jul 15, 2001
Another release of Mono is out, check the Mono 0.4 Release Notes. Get it here.
** Jul 14, 2001
A new
release of the
runtime, compiler and classes has been made. Get it here
** Jul 12, 2001
I keep getting questions about my opinion on Passport, even when
Mono has nothing to do with it. I finally wrote something.
** Jul 9, 2001
Project launched.
** O'Reilly
Brian posted a story on O'Reilly Network .NET