| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112 |
- * 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.
- <a name="runtime">
- ** 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.
- <a name="classes">
- ** Classes
- <ul>
- TODO=jxta,The JXTA Peer to Peer foundation
- * Implement a JXTA protocol implementation:
- <a href="http://www.jxta.org">http://www.jxta.org</a>
- TODO=camel,Mail API
- * Implement a Mail API, similar to Camel or JavaMail (Camel has
- significant architecture features that are required on a real
- mailer).
- You can check the current C
- <a href="http://cvs.gnome.org/bonsai/rview.cgi?dir=evolution%2Fcamel">
- Camel implementation</a>.
- Such an implementation could be used both with
- Microsoft .NET and Mono.
- TODO=multimedia
- * Interfacing to Multimedia systems. You might want
- to look into the Quicktime API. I know <a
- href="mailto:[email protected]">Vladimir</a> has
- researched the problem before
- </ul>
- <a name="projects">
- ** Projects
- <ul>
- TODO=xmlStorage,
- * Implement an xmlStorageSystem for the CLI:
- <a href="http://www.soapware.org/xmlStorageSystem">
- http://www.soapware.org/xmlStorageSystem</a>
- 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 (<a
- href="http://www.omg.org">The OMG site</a> 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 <a
- href="http://primates.ximian.com/~miguel/monikers.html">an
- overview of the moniker system</a> in Bonobo.
- </ul>
|