* Ideas There are many pending classes that need to be implemented. Those have the highest impact in the Mono project: the sooner they are done, the sooner we can start using this platform to create new and exciting applications. That being said, if you are not very excited about working on class libraries, here is a list of other related projects or tools that might be useful to the Mono project. Here are a few ideas of tools, classes and projects that you could start. More are forthcoming. ** Runtime We need a verifier that can be run on an executable (assembly) and tells whether the metadata for the executable is correct or not. It should report any anomalies. For a list of anomalies in assemblies, check the various assertions that are described on the ECMA documentation. This will help test our generated executables and can be also used as an external verifier. ** Classes ** Projects TODO=guavac,Java compiler for .NET * You could take one of the existing Java compilers (Guavac comes to mind as it is so nice) and modify it to generate .NET code rather than JVM byte codes. This should be a pretty straightforward task. Guavac has the advantage of being written in C++ and it could be compiled with the Microsoft Managed C++ compiler and produce a .NET executable with it. TODO=CORBA,CORBA implementation * Build a CORBA interoperability engine for the CLR. You do not need to do all of the work, just talking the protocol will get us a long way (The OMG site has the CORBA specs). Get in touch with David Taylor (dtaylo11 at bigpond dot net dot au) as he has been working on this project. TODO=Bonobo,Bonobo for Mono * Once CORBA is done, implement the Bonobo interfaces to allow people to use Bonobo components in Mono and Mono components with Bonobo. The best of both worlds! TODO=moniker,Object Naming System with Monikers * A naming space for Mono. An object naming space is a very powerful tool. Bonobo implements a moniker system that is more powerful than the original moniker concept that was pioneered by COM/OLE in the Microsoft world. Our implementation builds on a concept, and we have made it simpler, more powerful, more extensible and a much better mechanism than the equivalent monikers on Windows. Implementing Mono monikers would benefit both Windows users using .NET and Mono users on Unix and Windows. Here is an overview of the moniker system in Bonobo.